发布网友 发布时间:2022-04-25 13:18
共3个回答
懂视网 时间:2022-04-08 00:17
缘由:
小师妹周末叫我帮她重装数据库,这么大好的周末时光不出去玩儿,给她装数据库这不是很蛋疼么。
我问她为什么要重装,她说:数据存入数据库后,中文字符有乱码,一定是我上次给她安装数据库的时候
有问题。当初为了给她安装个数据库,可是费了九牛二虎之力,64位数据库,32位数据库客户端来回折腾了
两天才弄好,我可不想再重新给她弄。在网上找到了个解决方案,一下子就把乱码的问题解决了。
// http://www.2cto.com/database/201407/313317.html
我的Oracle是11g版本的,下面以我的为例,为大家讲解下设置的过程。
开始-运行-输入regedit-回车进入注册表,依次单击HKEY_LOCAL_MACHINE--->SOFTWARE ---> ORACLE--->KEY_OraDb11g_home1(不同版本的Oracle显示的都不太一样,但都会包含home这个单词),找到“NLS_LANG”,查看数值数据是否为:“SIMPLIFIED CHINESE_CHINA.ZHS16GBK”,如果不是就将它设置为“SIMPLIFIED CHINESE_CHINA.ZHS16GBK。”
设置完注册表后,接下来设置我们的环境变量,计算机(右键) --->属性--->高级系统设置--->高级--->环境变量--->新建,个人建议新建用户变量,变量名输入:“NLS_LANG”,变量值输入:“SIMPLIFIEDCHINESE_CHINA.ZHS16GBK”。点击确定即可,到此我们就设置完了。
Oracle数据库PLSQL的中文乱码显示全是问号
标签:
热心网友 时间:2022-04-07 21:25
首先,检查DB中字符集,可以通过以下的SQL来查得,
或者
比如查询结果:
SIMPLIFIED CHINESE_CHINA.ZHS16GBK
那么字符集就是:ZHS16GBK;
然后设置客户端的本地字符集:
注册表:
默认情况下,windows上的Oracle安装使用注册表来定义这个设置。
版本 10g 及以上:
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_<oracle_home_name>
这里您会看到一个条目名为NLS_LANG
在64位windows平台上安装32位软件,会使用32位兼容性路径
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ORACLE\KEY_<oracle_home_name>
或者环境变量:'我的电脑' -> '属性' > '高级' -> '环境变量'
增加一个:nls_lang = SIMPLIFIED CHINESE_CHINA.ZHS16GBK
重启一下机器就可以了。
热心网友 时间:2022-04-07 22:43
在网上查找了很多想多的帖子,大多数都是字符集不一致导致的乱码问题。对于出现乱码或问号等不正常显示问题,根据数据库字符集,正确配置参数NLS_LANG,一般可以解决,如果仍出现乱码,则可能和所使用的工具的字体编码设置有关。