导入sql文件
先看下导入的SQL文件中有没有drop database或者drop table字样,这个要小心。
方案一:GUI工具直接导入
SET foreign_key_checks = 0; -- 禁用外键,在文件顶部加 -- sql语句 SET foreign_key_checks = 1; -- 恢复外键,在文件底部加
当外键约束导致插入失败时ERROR 1452 (23000): Cannot add or update a child row: a foreign key constraint fails.需要设置set foreign_key_checks =0;
方案二:适合大文件
mysql -h 服务器ip -P 3306 -u root -p -- 连接mysql,不直接指定密码为了安全考虑,这里写密码是明文 show databases; -- 查看所有数据库 use db; -- 选择数据库 source d:/data.sql; -- 导入数据文件
当数据中心包含中文时,中文
ERROR 1366 (HY000): Incorrect string value: ‘/xC1/xBA’ for column ‘leavingOperatorName’ at row 1
show create table tblName; -- 查看创建数据表时的语句指定的存储引擎及编码格式 status; -- 查看数据库的状态信息 show full columns from tablename; -- 查看表的列的属性
如果是lant改变列编码为utf-8
alter table tablename change columnsname columnsname varchar(255) character set utf8 collate utf8_unicode_ci not null default '';
如果上面都没有问题,source之后依然报这个错,那可能是导出的txt文件编码格式的问题。用ultraedit打开,改为UTF-8即可。
原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/3953.html