环境:1.win2003server+oracle9i
2.oracle9i字符集为AMERICAN_AMERICA.WE8ISO8859P1
3.oracle sql developer版本 1.5.5现象描述: 1.在sql developer 中查询oracle中的某个表,中文全部显示为乱码。
2.在sql plus中查询同样的表,中文显示正确。
3.在powerbulider开发工具中查询同样的表,中文显示也正确。
4.环境变量中设置了nls_lang=AMERICAN_AMERICA.WE8ISO8859P1
5.在sqlplus、pb、sql developer三个程序执行select * from v$nls_parameters ;
三个查询显示的各个参数的值完全一样。
6.将sql developer 中的字体改为宋体,显示也为乱码。
实在找不出原因了,帮帮忙吧!
2.oracle9i字符集为AMERICAN_AMERICA.WE8ISO8859P1
3.oracle sql developer版本 1.5.5现象描述: 1.在sql developer 中查询oracle中的某个表,中文全部显示为乱码。
2.在sql plus中查询同样的表,中文显示正确。
3.在powerbulider开发工具中查询同样的表,中文显示也正确。
4.环境变量中设置了nls_lang=AMERICAN_AMERICA.WE8ISO8859P1
5.在sqlplus、pb、sql developer三个程序执行select * from v$nls_parameters ;
三个查询显示的各个参数的值完全一样。
6.将sql developer 中的字体改为宋体,显示也为乱码。
实在找不出原因了,帮帮忙吧!
国家区域字符集用utf-8
但是有例外的情况:
服务端设置为WE8ISO8859P1,客户端也设置为WE8ISO8859P1就OK了.
客户端编码设置的方法:
进入注册表regedit->MATCHINE->SOFTWARE->ORACLE下有个NLS_LANG,设置和数据库字符集一样就OK了.但是这样的话有一个问题,就是你存在数据库的字符集是客户端应用的字符集,而不是WE8ISO8859P1翻译成中文的字符集.第二个方法是重新创建数据库.设置为ZHS16GBK 或者AL32UTF8或UTF8
客户端一样.
2、nls_lang下都设设置了
3.在客户端软件中,vs2005、pb90、sqlplus连接数据库,取出的数据都是中文的,4、只有在oracle sql developer中连接后,取出的数据不对。所以原因应该是在oracle sql developer的设置中有不对的地方或者特殊的地方实在都没办法了,只有不用这个工具了