Try some of these options.
Option A:
- Use bcp to import data (after dropping all keys/constraints etc)
- Recreate all the keys/constrains after the data load
- Run the validation routine in SSIS to flag questionable data
Option B:
- If you're using flat-file to import data via SSIS. Look into "Error Output" in Flat-File-Source-Editor
- Set the behavior (i.e. redirect/fail/ignore) you want to have happened on error/truncation of each column
I'm curious to learn how others approach this.