原因:因为数据库的编号格式和pl /sql developer的编码格式不统一造成的。
二、查看和修改oracle数据库字符集:
select userenv('language') from dual
查询结果:
SIMPLIFIED CHINESE_CHINA.AL32UTF8
--修改oracle数据库字符集:(在SQL Plus中)
sql>conn / as sysdba
sql>shutdown immediate
database closed.
database dismounted.
oracle instance shut down.
sql>startup mount
oracle instance started.
total system global area 135337420 bytes
fixed size 452044 bytes
variable size 109051904 bytes
database buffers 25165824 bytes
redo buffers 667648 bytes
database mounted.
sql>alter system enable restricted session
system altered.
sql>alter system set job_queue_proces
方法/步骤1
确保本机上安装plsql软件,例如安装路径为:D:\Program Files\PLSQL Developer\,如果没有软件安装程序请打开百度搜索plsql下载
2
首先可以通过执行以下sql,查看oracle服务器字符集,
select * from nls_database_parameters或者select userenv('language') from dual
可以看到内容如下:
NLS_LANGUAGE:SIMPLIFIED CHINESE
NLS_TERRITORY:CHINA
NLS_CHARACTERSET:ZHS16GBK,表示语言oracle数据库服务器语言为简体中文,地区为中国,字符集为ZHS16GBK
3
由于oracle客户端在获取字符集设置信息时的优先级顺序依次为:session、环境变量、注册表、参数文件,因此可以通过设置这些位置实现客户端字符集设置的目的,因此本文采用设置session的方法,设置NLS_LANG变量值,从而覆盖所有设置值。
4
新建一个.bat文件" highlight="true">bat文件,命名为plsqlgbk.bat,内容如下:
set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK"D:\Program Files\PLSQL Developer\plsqldev.exe"
5
以后运行plsql程序时直接打开此bat即实现自动设置NLS_LANG变量后启动plsql应用程序,当然如果需要修改客户端的其他设置也可根据此方法修改内容即可,个人认为此方法使用非常方便有效。
END
注意事项
此方法与现有的oracle客户端设置并不冲突,只是会覆盖现有设置信息
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)