使用不同的编码将SQL Server表迁移到MySQL表

时间:2015-08-31 23:43:51

标签: mysql sql-server encoding utf-8 latin1

我在 SQL 服务器中有一个表,我想将其移至 MySQL 表。但是,我想将默认编码从latin-1更改为utf-8。我已经尝试运行SQL Server导入和导出向导,它将csv导出到文件。当我为“代码页”选择 utf-8 编码时失败。它存储为 latin-1

无论如何,我想知道如何导出这些数据并将其作为utf-8导入MySQL?我不想打开文本编辑器并将导出的文件保存为UTF-8。

1 个答案:

答案 0 :(得分:1)

计划A:

继续导出为SQL_Latin1_General_CP1_CI_AS,但请务必将导入设置为CHARACTER SET utf8

但是,如果CREATE TABLE语句隐藏在转储中,这可能会很棘手。所以......

计划B:

目前正在进行导出和导入。然后,对于每个表,执行

ALTER TABLE tbl CONVERT TO CHARACTER SET utf8;

如果您打算处理中文,utf8mb4会更好 对于许多用途,默认COLLATE utf8_general_ci都可以,但您可以考虑使用utf8_unicode_ci