SSIS - 从MySql到MsSql的数据有些字符是什么?

时间:2009-02-08 16:40:11

标签: mysql sql-server ssis

我刚刚在文本字段中将一些数据从MySql传输到MsSql(2K5),我的一些字符,如撇号,现在呢? (问号)对我来说这表示某种整理或字符集错误,对吗?

说实话,我不知道应该使用哪一个

MySql db currect charset是utf8_general_ci,ms ms是SQL_Latin1_General_CP1_CI_AS。

我已经尝试将mysql表的charset更改为latin1_swedish_ci,但这没有帮助

感谢输入

2 个答案:

答案 0 :(得分:1)

您是否尝试将目标(SQL Server)列数据类型更改为NVARCHAR?

MySQL列上的utf8_general_ci排序规则表示Unicode数据类型。如果源是Unicode,那么应该是目标 - 最简单的过渡。

Collat​​ions本身在这里扮演次要角色。它们只会影响比较和排序。

答案 1 :(得分:0)

您可能还需要检查数据流中列的SSIS类型。请记住,数据类型和字符集是在源上的连接管理器上设置的(可能涉及从原始本机字符集的转换)。此外,任何操作(如派生列或转换)都将具有可以更改的字符集,并将在数据流中保留该列的谱系。在到达目的地的最后,可能会有额外的字符集强制/转换。