发中有时老板会扔给你一个excel让你吧数据导入到数据库中,一条一条的录入显然是不符合实际的,通常都有一些快速的导入方法,也许你会写程序去导入,但是当时间紧迫没有时间去写代码的时候更为快速的将数据导入到数据库就迫切需要了,这里列举其中一个,利用csv文件导入mysql数据库
1.将excel数据另存为.csv 格式
建议:在另存为.csv格式之前把文件中的表格类型设置成文本格式,没什么特别的地方,个人喜好而已
2.在linux下使用iconv -f GB2312
-t
UTF-8 ques.csv >q.csv
将文件编码一次,否则导入到数据库中时会出现中文为空的情况
说明:utf-8编码是要和你数据库编码一样的,不是一定是这个
注意了,这时候查看下转码后的q.csv里的数据跟源文件相比是不是一样,如果相差很多就把gb2312 换成gbk再试一次,也可换成其他已知编码格式
原因:源文件ques.csv中的编码有当前设置的编码格式包含不了的,也就是说iconv命令只会去重新编码它认识的内容,他不认识的就直接跳过了哦
3,使用命令load data local infile 'q.csv' into table questionModel fields terminated by ',';
注意:因为在导入csv格式的数据默认是以“,”分割的。所以这里我们要加上fields terminated by ',',这样我们才能将文件中对应的列对应到数据库中的列,不然mysql会将一行数据当做一个字段处理,也就是本来一行中有很多咧的内容但是现在都存在一个第一个字段下了,切记