Importing table data is an easy enough task in SQL Server 2005 - but this week we stumbled across this error message:
Error 0xc0202009: Data Flow Task: SSIS Error Code DTS_E_OLEDBERROR. An OLE DB error has occurred. Error code: 0x80004005.An OLE DB record is available. Source: "Microsoft SQL Native Client" Hresult: 0x80004005 Description: "Expected the TEXT token in data stream for bulk copy of text or image data.". (SQL Server Import and Export Wizard)
Funny thing is, there were only nvarchar(max) columns on the table, and no binary columns whatsoever. A bit of searching and more staring at the table definition finally pointed out us in the right direction - the target table has a computed field in it, like so:
[MyComputedColumn] AS ( [dbo].[MyFunction](OtherColumnAsParameter) ),
Although we had told SSIS to <ignore> it, this error came up. The only work around for SSIS: remove the computed field before doing the import.