Hello experts - I'm embarking on a massive task to import DB2 data into SQL Server 2012. I have most of the tables definitions created and data loaded. Next I need to create a process to refresh the data. I am trying the merge statement, but is that the best approach? I've read there are known issues with merge and I have come across two already. One table loaded some rows twice. Another one loaded all rows and then extra 'bogus' rows (doubling the record) count. In this instance, I **think** it is related to some EBCDIC character. See attached screen shot of the DB2 data. The extra rows have blank or zeros in all of the columns. If merge is not a viable option, what other avenues can I pursue (other than truncate / reload every time).? ![alt text] : /storage/temp/3621-db2-table-data.png
Does the data have some type of unique row identifier? Or a date stamp? If so, I'd look at using SSIS to move this data. It's great for these types of things and if the data has something unique about each row, you can design the package to only load what's new and/or changed (assuming you have a way to identify that). Or you can have the package do a nuke & pave option as a last resort. Hope that helps!
the ++++ are often numerics that don't fit or dates in the wrong format.... I would really have a look at using SSIS, we use Lookup and Insert/Update accordingly. We have found SSIS to be so much faster than using Linked Server