参考网页
- http://www.cnblogs.com/latifrons/archive/2012/09/07/2675141.html
- http://my.oschina.net/xsh1208/blog/470245
引言
为了从 MSSQL (MS SQL server 2008r2) 转移数据库到 MySQL,想着利用各种工具,均告失败。曾经设想过使用 phpmyadmin 直接导入 MSSQL 格式的 .sql 文件。在 MSSQL 任务->导出脚本->配置导出数据和格式->导出。导出的文件,依旧无法直接用 phpmyadmin 直接导入,包括选择兼容 MSSQL 格式文件。分析数据,发现需要转移的数据量只有一个表格,不过其内容非常多而已,遂想用 Excel 导入。是有此文。
步骤
1、导出 UTF-8 的 CSV 文件
打开Excel,处理好你需要的列,把不需要的列都删掉。另存为CSV文件。
特别注意一点:如果你的MySQL默认编码方式是UTF-8的话需要用Editplus等软件把CSV文件另存为UTF-8编码格式, 因为Excel默认编码格式是ANSI,MySQL在导入中文数据的时候很可能会出
Warning:1366 Incorrect string value
2、复制类似表格 MySQL 表
到MySQL里建表,字段的顺序要跟Excel里的完全一致。(不要建其他任何列,包括id)
3、导入 CSV 文件
phpmyadmin 中 sql 运行如下语句:
load data local infile '[你的csv文件路径]' into table [表名] fields terminated by ',';
例如:
load data local infile 'E:\\Dev\\a.csv' into table t1 fields terminated by ',';
注意 csv 文件的分隔符是逗号,所以最后 terminated by 之后跟的是逗号。如果是制表符,则用
load data local infile 'E:\\Dev\\a.csv' into table t1 fields terminated by '\t';
4、纠错并完善
运行完上一步记得查看log,必须没有warning才算成功。
最后Alter Table,加入id列(primary key,not null, auto increment)和其他列即可。
来源:oschina
链接:https://my.oschina.net/u/254557/blog/679149