本文共 1323 字,大约阅读时间需要 4 分钟。
目录
学生表
下面我们将学生表的查询结果导出到文件中
select * from student into outfile 'D:/Files/student.csv' fields terminated by ',' optionally enclosed by '"' escaped by '"' lines terminated by'\n';
此语句按一定格式在D:\Files\下生成了一个student.csv文件
select * from student into outfile 'D:/Files/student.txt';
产生的txt文件如下所示,这里采用的是默认格式,按tab分隔字段。当然这里也可以跟上面一样,采用自定义个格式
select * from student_grade into outfile 'D:/Files/student.xls';
此时,生成的Excel文件出现了乱码问题
这是因为student表是采用utf8编码(可以用show create table student;语句查看一下),而Excel文件则是GB2312编码。
所以我们采用convert将中文字段转换成gbk编码:
select sid, convert((sname) using gbk) as sname, convert((gender) using gbk) as gender,class, convert((major) using gbk) as major from student into outfile 'D:\Files\student.xls';
这时就不会有乱码问题了
接下来我们新建一个student2表,并且将刚才生成的几个文件的数据导入到表中
load data infile 'D:\\Files\\student.csv' into table student2 fields terminated by ',' optionally enclosed by '"' escaped by '"' lines terminated by'\n';
成功导入数据:
删除刚刚插入的所有数据:
再从txt文件中导入:
load data infile 'D:\\Files\\student.txt' into table student2;
成功导入数据:
删除刚刚插入的所有数据:
再从Excel文件中导入:
load data infile 'D:\\Files\\student.xls' into table student2;
此时导入的数据出现乱码:
我们在导入数据的时候指定编码为gbk。
load data infile 'D:\\Files\\student.xls' into table student2 character set gbk;
这样就不会出现乱码了:
参考链接:
转载地址:http://kdnii.baihongyu.com/