有没有大🐮遇见过Oracle中文乱码的问题?
我搜了一下网上,大致都是设置注册项里一个字符集解决。
我这边是华为工作环境,找不到对应的注册项路径,所以没办法这样解决。
我尝试用python读取乱码的中文字符,用utf-8解码后再用其他编码格式编码输出,可是依然不行。
有没有大🐮有解决方法,或者介绍一下这里面的逻辑。
我不明白,oracle显示出来的乱码的字符,使用的是什么编码格式?
或者有没有办法直接从oracle中获取对应字节,直接编码?
玩过11g可以用sql语句改,参考这里:https://blog.csdn.net/weixin_28787801/article/details/116326291
首先你要确认一下是数据乱码了还是你本地客户端和代码页字符集不匹配。
本地客户端的字符集是在环境变量NLS_LANG中设置的,windows和linux都有这个环境变量,所以就算你是华为的工作环境,也同样是可以设置的.
至于代码页字符集,其实就是你程序的查询窗口定义的字符集,或者是你使用的开发语言定义的字符集。
详细可以参考我这篇文章