mysql5.7导入csv文件

时间:2022-05-29 15:04:06

环境:

  • Windows10企业版X64
  • mysql5.7免安装版(从5.6版本开始,官方不再提供64位的msi版本)

运行mysqld.exe启动mysql进程。

用root登录mysql:

mysql.exe -u root -p

mysql的默认数据库编码是latin1,编码查看命令:

 show variables like 'character-set%';

mysql5.7导入csv文件

修改mysql的默认数据库编码:在安装目录下,新建my.ini文件,粘贴下列内容:

[client]
port=
default-character-set=utf8
[mysqld]
port=
character_set_server=utf8
#解压目录 basedir=D:\mysql-5.7.-winx64 #解压目录下data目录 datadir=D:\mysql-5.7.-winx64\data sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES [WinMySQLAdmin] D:\mysql-5.7.-winx64\bin\mysqld.exe

重启mysqld.exe。

用root登录mysql:

mysql.exe -u root -p

切到数据库m8:

use m8;

新建表:

CREATE TABLE `bd_mor_txjd` (
`id` int(11) NOT NULL,
`jclxbm` varchar(45) DEFAULT NULL COMMENT '监测类型编码',
`scsj` varchar(45) DEFAULT NULL COMMENT '上传时间',
`xb` varchar(45) DEFAULT NULL COMMENT '相别',
`qdl` double DEFAULT NULL COMMENT '全电流',
`sfgl` varchar(45) DEFAULT NULL COMMENT '是否过滤',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

导入命令(必须是root用户,而且必须指定编码utf8,否则导入后中文是乱码):

load data local infile 'E:/data_collection/test.csv' into table bd_mor_txjd  character set utf8 fields terminated by ','  optionally enclosed by '"' escaped by '"'   lines terminated by '\r\n';

注意:用mysql-workbench自带的data import wizard总是导入失败,不知为何。因此不推荐用GUI方式。

命令方式导入后,查看结果:

mysql5.7导入csv文件