CSV导出数据乱码情况分析及处理
在navicat 中有很多导出方式,大家都知道csv导出要比xlse要快很多,但是在使用csv导出时要防止乱码情况,
下面我列出三种处理方式(如有其他方式大家可以帮忙补充一下):
文章目录
- CSV导出数据乱码情况分析及处理
- 一、CSV导出文本乱码
- 二、CSV导出后乱码问题,想修复
- 三、CSV导出后数字乱码
一、CSV导出文本乱码
乱码情况:
解决方案:在导出数据时,更改编码
更改编码:
改为
不过10008这个编码,遇见繁体字也会乱码,故也可以使用936
二、CSV导出后乱码问题,想修复
(参考了别人的讲解,我试了一下没成功,你们可以尝试一下)
1.把导出的csv文件用**notepad++**打开,然后在选项栏中_格式_中以UTF-8格式编码
2.之后正常用csv打开(把文件另存为到其他的盘中即可)
三、CSV导出后数字乱码
由于csv导出数字会进行科学计数:如果数字大于12位,它会自动转化为科学计数法;如果数字大于15位,它不仅用于科学技术费表示,还会只保留高15位,其他位都变0。
针对这个问题:可以通过在数字字段后面加上显示上看不见的字符即可,字符串前面或者结尾加上制表符"\t",也可在数字列加一个符号,导出数据后通过分列的方式删除并保存为文本
--结尾加上制表符"\t"
select A.*,A.ID||'\t' from table A;
--数字列结尾加一个符号
select A.*,A.ID||',' from table A;
结果