我们经常会经常遇到在windows机器上中文字符正常显示的离线文件,通过sql文件导入到达梦后中文字符乱码的情况,这种情况该如何解决呢?
首先我们要了解到一般情况下,我们的windows主机的字符集多为简体中文GBK,能在windows主机上正常用文本文档显示的的,大概率该文件编码也为GBK。
而我们的达梦数据库一般部署在linux主机上,操作系统字符集一般为utf8,如下:
数据库字符集默认为1,代表为utf8
由于从windows主机上编辑的文件字符集和数据库字符集不一致,将导致通过dmfldr导入的中文字符乱码,可以通过如下方式解决。
可以通过在操作系统层面export LANG=zh_CN.GBK,然后再通过disql连接到数据库,然后SET CHAR_CODE GBK,再通过执行start /dm8/demo.sql。再导入的文件中文乱码的问题就解决了。
文章
阅读量
获赞