OLE DB Connection Error - Failed to retrieve long data for column
I am attempting to load an excel 2007 data file into a sql 2008r2 database with ssis 2005 and the ACE 12.0 drivers. My file connection string is formatted like this: "Data Source=<file.xlsx>;Provider=Microsoft.ACE.OLEDB.12.0;Extended Properties=\"Excel 12.0 Xml;IMEX=1;\"" My registry settings for typeguessrows=0 My BLOB and Buffer temp storage paths have sufficient space. I tried to redirect error output for this column to a sql table to see which key it is failing on, but it errors before loading any rows. --- The weird thing is this: We have already completed data iterations and previously I had it transferring this file. With typeguessrows set to 0 it was picking up this column as DT_NTEXT. That worked just fine, loaded all 190,000 rows. When I reload the file from the last iteration it works fine again. When I load the file with the new iteration, it picks up the column as a nvarchar(255). I run it and it errors due to truncation after processing a number of rows. I change to nvarchar(4000) same results. I change again to DT_NTEXT and it wont even start processing any rows like it does for nvarchar. If you have any ideas please let me know, I greatly appreciate it!
September 21st, 2011 4:28pm

I have isolated the issue. TypeGuessRows=0 does not scan all rows. I was unaware it was capped at 16,384 until I did more research on the setting. Failed to retrieve long data for column was thrown since it didn't find a value for that column greater than 255 chars in the first 16,384 rows of my dt_ntext column. Thanks to all who checked this out and gave it some thought!
Free Windows Admin Tool Kit Click here and download it now
September 21st, 2011 5:36pm

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics