我在 SSIS 的数据流
任务中收到“无法在 unicode 和非 unicodedoe 字符串数据类型之间转换
”错误,但我无法弄清楚原因。
- 我已使用“
.Net Providers\Odbc Data Provider
”提供程序创建了与MySQL DB
的ADO.NET
连接,该连接使用连接字符串如下所示:Driver={MySQL ODBC 5.3 ANSI Driver};server=....
- 我有一个到
SQL 服务器
的OLE DB
连接 - 我有一个
数据流
任务 - 我有一个使用
MySQL
连接的ADO NET Source
- 我有一个使用
SQL Server
连接的OLE DB 目标
- 源 (
MySQL
) 中的所有列均为varchar(50)
- 目标 (
SQL Server
) 中的所有列均为varchar(50)
然而,OLE DB Destination
任务仍然出现错误,并显示“列“one”无法在 unicode 和非 unicode 字符串数据类型之间转换。
”
我尝试使用数据转换
任务将所有内容转换为“字符串 [DT_STR]
”,目标任务停止显示红色 X,但执行失败并显示“错误:将列“一”(13) 转换为列“一的副本”(32) 时数据转换失败。转换返回状态值 4 和状态文本“文本被截断或一个或多个字符在目标代码页中不匹配。”
'
最佳答案
增加one
和copy of one
的列长度。第一列/第二列的长度(位)不够。增加长度并尝试。如果是 40,则将其更改为 >60。 Unicode 需要更多位来存储字符串。
关于mysql - 从 MySQL 到 SQL Server unicode 和非 unicode 的 SSIS 数据流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47404857/