今天在做数据库导出的时候,遇到这样的一个错误提示
SSIS 錯誤碼 DTS_E_OLEDBERROR。發生 OLE DB 錯誤。錯誤碼: 0x80040E21 备注
我是把一个以前的老库数据,导入到新建立的新库表,这其中会有一些字段的长度不同,或是有一些没有用的字段,就不用了.可是出现这种情况还是第一次,上网查了一下,MSDN上给出的解释是
源列的数据类型是类似 Text一类的无长度限制的文本,而目标库的类型是varchar一类的有长度限制的文本.
这种情况下,sql server2005(2000没试不知道会怎么样)会直接认为这是错的.
这主要还是老库表中有一个字段设置的是nvarchar(max)所引起的.而这个字段本身就没有这么多值,所以我把这个字段类型改了一下.变成nvarchar(50).就可以导了.
本文介绍了解决SSIS导出数据库时遇到的DTS_E_OLEDBERROR错误的具体步骤。错误通常由源列数据类型(如nvarchar(max))与目标列不匹配引起。通过调整字段类型为nvarchar(50),成功解决了该问题。
77

被折叠的 条评论
为什么被折叠?



