首页 > 数据库 >Oracle注册表修改 乱码编码

Oracle注册表修改 乱码编码

时间:2022-11-17 13:10:08浏览次数:43  
标签:LANG 编码 CHINESE 注册表 乱码 sqlplus SQL Oracle PL

HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0
"NLS_LANG"值改为"SIMPLIFIED CHINESE_CHINA.ZHS16GBK"


AMERICAN.AL32UTF8

乱码更改
oracle 10g装上后,建了个表写入中文数据,发现通过工具DbVisualizer 6.5 写入/读取中文都正常,就sqlplus和PL/SQL Developer不正常.
初步怀疑是DbVisualizer本身定义了字集编码,而sqlplus和PL/SQL Developer则没有.无论怎么样,要正常显示中文,就必须得服务器和客户端编码一致才行.于是检查.
1.检查服务器编码:
执行SQL语法:
select * from v$nls_parameters;


也可以参照/home/oracle/.bash_profile 相关语言设置. 可以看到我的相关设置是:
LANG=zh_CN.GBK  NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
2.设置本地客户端编码:
进入 我的电脑,属性,高级,环境变量,添加2项:
LANG=zh_CN.GBK  NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
如图:

3.重新连接sqlplus,查看数据:


显示正常.
4.PL/SQL Developer设置并重新连接:
在pl/sql developer的菜单->tools->preferences->user interface->fonts 中修改为中文字体
重新连接,如图:


显示正常.OK!

标签:LANG,编码,CHINESE,注册表,乱码,sqlplus,SQL,Oracle,PL
From: https://blog.51cto.com/yuzhyn/5860712

相关文章

  • Oracle笔记:循环及游标
    循环及退出循环:--while--初值while条件loop循环体;循环变量的变化;endloop;--breakif条件thenexit;endif;--continue<<label>>....if条件thengotolabel;end......
  • Oracle自增序列
     SQLServer中数据库可以自增字段,但是Oracle中没有这个选项,实际应用中我们可以使用序列(Sequence)实现想要的功能。创建Sequence语法如下:CREATE......
  • Oracle创建用户和授权
    在OracleXE中创建scott用户1、打开SQL*Plus,以sys用户登录数据库connect/assysdba2、依次执行下面命令--DROPUSERscottCASCADE;CRE......
  • 在Oracle中CHAR,NCHAR,VARCHAR,VARCHAR2,NVARCHAR2这五种类型的区别
    【在Oracle中CHAR,NCHAR,VARCHAR,VARCHAR2,NVARCHAR2这五种类型的区别】1.CHAR(size)和VARCHAR(size)的区别   CHAR为定长的字段,最大长度为2K字节......
  • Eclipse乱码怎么办
    在Eclipse中导入新的项目的时候,会遇到乱码的问题,而乱码的问题主要集中在中文的显示上。Eclipse设置编码的地方主要有三处,这三处的设置都会影响中文的显示。解决方法:一.......
  • Oracle-1 / Oracle及PlsqlDeveloper的设置
    1、启动监听器与服务器我的电脑->管理->服务...保证“...listener...”和“...service...”两个服务开启2、客户端软件设置tools->preference->connection->Or......
  • Oracle内置角色connect与resource的权限
    首先用一个命令赋予user用户connect角色和resource角色: grantconnect,resourcetouser; 运行成功后用户包括的权限: CONNECT角色:--是授予最......
  • Oracle 自带建表例子 scott.sql 文件
    RemCopyright(c)1990byOracleCorporationRemNAMEREMUTLSAMPL.SQLRemFUNCTIONRemNOTESRemMODIFIEDRemgdudey06/28/95-Modifiedfordesktopseed......
  • Oracle date 插入显示公元前日期
    显示公元前日期很简单:--先创建一个表createtabletest(ddate);--插入一条记录--插入的日期要注意--1、“-”(负号)表示公元前--2、“s”格式控制符insertinto......
  • Oracle存储过程及函数的练习题
    --存储过程、函数练习题--(1)创建一个存储过程,以员工号为参数,输出该员工的工资createorreplaceprocedurep_sxt1(v_empnoinemp.empno%type,v_saloutemp.sal%type)isb......