将Smiley从mssql迁移到mysql

将Smiley从mssql迁移到mysql,mysql,sql-server,mysql-workbench,data-migration,bcp,Mysql,Sql Server,Mysql Workbench,Data Migration,Bcp,我一直在尝试使用mysql工作台将包含smiley的数据从ms sql数据库迁移到mysql数据库。但是我得到了一个错误,比如“不正确的字符串值:'\xF0\x9F\x91\x8D'用于列”。我尝试了很多方法,比如设置以下参数 character_set_client = utf8mb4 character_set_connection = utf8mb4 character_set_database = utf8mb4 character_set_filesystem = binary cha

我一直在尝试使用mysql工作台将包含smiley的数据从ms sql数据库迁移到mysql数据库。但是我得到了一个错误,比如“不正确的字符串值:'\xF0\x9F\x91\x8D'用于列”。我尝试了很多方法,比如设置以下参数

character_set_client = utf8mb4
character_set_connection = utf8mb4
character_set_database = utf8mb4
character_set_filesystem = binary
character_set_results = utf8mb4
character_set_server = utf8mb4
character_set_system = utf8
collation_connection = utf8mb4_0900_ai_ci
collation_database = utf8mb4_unicode_ci
collation_server = utf8mb4_unicode_ci.
但什么都不管用

我还尝试过使用BCP queryout(BCP用于从SSMS导出数据,MySql导入用于导入MySql),但也失败了

我对bcp使用了以下查询

bcp "SELECT * FROM database.schema.table"  
queryout D:\Data\test.csv -w -U username -P password -S server
并使用Mysql表数据导入实用程序

它显示错误“未处理的异常:”分隔符“必须是1个字符的字符串。”


我尝试过更改行分隔符和字段分隔符,但没有任何效果

您也尝试过utf-16吗?@nbk我们如何实现utf-16尝试使用此systax为您的表进行测试,但我认为您应该尝试获得适当的utf8@nbk我的桌子支持笑脸插入。但从sql server迁移到mysql时失败。您的sql服务器是utf 16或ucs2,只要您不显示任何来自mysql的创建表,我猜它是utf8。我的建议是将ms sql中的所有内容转换为utf8并导入(在第二个链接中显示),或者使用utf 16或ucs2试试运气。如链接1中所示,您也尝试过utf-16吗?@nbk我们如何实现utf-16?请尝试为您的表使用此systax,但我认为您应该尝试获得适当的utf8@nbk我的桌子支持笑脸插入。但从sql server迁移到mysql时失败。您的sql服务器是utf 16或ucs2,只要您不显示任何来自mysql的创建表,我猜它是utf8。我的建议是将ms sql中的所有内容转换为utf8并导入它(如第二个链接所示),或者使用utf 16或ucs2试试运气。如链接1所示