2013-07-10 35 views
0

我的SQL服务器上的数据库与列在表中:6000SSIS - 数据库表到Excel目标

,我要导出到使用SSIS的Excel目标 `[ABCD] [VARCHAR。

Error: Cannot convert between unicode and non unicode data types. Si tried to use Data Conversion but still i get the same error.

当我看看数据转换编辑器,我看到这个。

InputColumn OutputColumn DataType Length Precision Scale Code Page

ABCD Copy of ABCD string [DT_STR] 6000
1252 (ANSI - Latin I)

首先,它说的长度是无效的,并且必须是0 4000之间 我改变了4000,现在它说,ABCD的副本具有长度,精度,规模或代码页是0以外的值,但数据类型要求值为0.

精度和比例是空的,我无法将代码页更改为0,因为它只有其他代码页才能从其中选择。

我该如何解决这个问题。

回答

0

我遇到过Unicode和非Unicode之前的问题,以及为我解决问题的方法是将数据类型更改为Unicode字符串[DT_WSTR]而不是字符串[DT_STR]。在表中,Unicode数据的最大长度(即NCHAR或NVARCHAR(当指定长度时))为4000,这就是为什么6000的长度会给出错误。我希望这有帮助。

+0

是的,我试图将数据类型更改为DT_WSTR,但它确实有帮助,它仍然表示同样的错误:ABCD的副本具有长度,精度,比例或代码页,它是非0值,但数据类型要求值为0.精度和比例是空的,我不能将代码页更改为0,因为它只有其他代码页才能从其中选择。 – Virgo