• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
七秒钟记忆~
only for you!
博客园    首页    新随笔    联系   管理    订阅  订阅
PL/SQL设置编码方式

 

 (2012-10-30 21:38:33)
转载▼
标签: 

杂谈

 
分类: ORACLE

导出sql文件出现乱码问题,百度之后,发现问题是由于PL/SQL客户端和ORACLE的字符编码设置不一致引起的。(之前在登录PLSQL/Developer的时候有过提示,但是没在意),网上资料如下:

登录PLSQL/Developer是提示 客户端和服务端的字符编码设置不一致导致的。
上网 得知oralce字符编码设置和查询的一些方法,记录如下:

1. NLS_LANG 参数组成
NLS_LANG参数由以下部分组成:
NLS_LANG=_.

NLS_LANG各部分含义如下:
LANGUAGE指定:-Oracle消息使用的语言;-日期中月份和日显示
TERRITORY指定-货币和数字格式;-地区和计算星期及日期的习惯
CHARACTERSET:-控制客户端应用程序使用的字符集,通常设置或者等于客户端(如Windows)代码页,或者对于unicode应用设置为UTF8

 

select * from v$nls_parameters;  

 

LANG=zh_CN.GBK 

NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK" 

这里window下也可以通过界面修改 我的电脑-》属性-》高级-》环境变量-》NLS_LANG 直接修改重启pl/sql即可

 

   

 

iso8859的 AMERICAN_AMERICA.WE8ISO8859P1

gbk的       SIMPLIFIED CHINESE_CHINA.ZHS16GBK

 

 

本人的解决方式是:打开运行器进入注册表编辑 
运行-->regedit (注册表)
-->HKEY_LOCAL_MACHINE\  SOFTWARE\ ORACLE\KEY_OraDb11g_home1 的变量NLS_LANG的值 
SIMPLIFIED CHINESE_CHINA.ZHS16GBK  
改变成以下的值 
SIMPLIFIED CHINESE_CHINA.AL32UTF8(服务端编码 ---ORACLE的编码方式)

然后重新启动 pl/sql developer

select userenv('language') from dual; --查询ORACLE的编码方式

posted on 2015-10-30 14:26  七秒钟记忆~  阅读(2596)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3