正文

Oracle PL/SQL NLS查询及设置2005-04-20 11:36:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/xueyb/650.html

分享到:

在使用ORACLE数据库的时候,常常连上数据库出现乱码的现象出现,原因:客户端的字符串集和数据库的不一直. 要取的数据库的字符集,并把客户端的字符集设置和数据库一直即可.取得的方法: 1.SQL:      select value,parameter from nls_database_parameters where parameter in('NLS_LANGUAGE','NLS_TERRITORY','NLS_CHARACTERSET');      依此组装即可,"NLS_LANGUAGE_NLS_TERRITORY.NLS_CHARACTERSET"。 2.创建procedure : create or replace procedure get_nls is   -- Local variables here   langs varchar2(128) ;   loc varchar2(128);   charset varchar2(128); begin   -- Test statements here   select value into langs from nls_database_parameters where parameter='NLS_LANGUAGE';   select value into loc from nls_database_parameters where parameter='NLS_TERRITORY';   select value into charset from nls_database_parameters where parameter='NLS_CHARACTERSET';   -- Sure that :set serveroutput on   DBMS_OUTPUT.PUT_LINE(langs||'_'||loc||'.'||charset); end get_nls;   1).SQL中执行如下,即可查出:     SQL> execute get_nls();     AMERICAN_AMERICA.AL32UTF8   2).如果没有显示,请设置数据库为显示输出为ON,如下:     SQL> set serveroutput on 3.涉及到NLS信息的视图有: nls_database_parameters,nls_instance_parameters,nls_session_parameters也可查询参考。 4.设置客户端的字符集,打开注册表:找到如下相关项:HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE 找到LAST HOME如:HOME0 修改HOME0中的NLS_LANG 为查出的字符集:AMERICAN_AMERICA.AL32UTF8

阅读(5776) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册