我在sql server上的数据库上有一个表,其中包含一列: `[ABCD] [varchar]为6000
我想使用SSIS导出到Excel目的地。
错误:无法在unicode和非unicode数据类型之间进行转换。硅 尝试使用数据转换,但我仍然得到相同的错误。
当我查看数据转换编辑器时,我看到了这一点。
InputColumn OutputColumn DataType Length Precision 比例代码页
ABCD字符串的ABCD副本[DT_STR] 6000
1252(ANSI - Latin I)
首先它说长度无效,必须在0到4000之间。 我将其更改为4000,现在它表示ABCD的副本具有长度,精度,比例或代码页,该值是0以外的值,但数据类型要求值为0。
精度和比例为空,我无法将代码页更改为0,因为它只有一个下拉列表,只有其他代码页可供选择。
我该如何解决这个问题。
答案 0 :(得分:0)
之前我遇到过Unicode和非Unicode的问题,为我解决的问题是将数据类型更改为Unicode String [DT_WSTR]而不是字符串[DT_STR]。表中的unicode数据(即NCHAR或NVARCHAR(当指定长度时))的最大长度是4000,这就是6000长度给出错误的原因。我希望这会有所帮助。