oracle11 报错,在网上找到的答案。
引自:http://blog.163.com/magicc_love/blog/static/18585366220123111128283/
PL/SQL database character set(AL32UTF8) and Client character set(ZHS16GBK) are different
启动PL/SQL Developer 报字符编码不一致错误
Database character set (AL32UTF8) and Client character set (ZHS16GBK) are different.
Character set conversion may cause unexpected results.
Note: you can set the client character set through the NLS_LANG environment variable or the NLS_LANG registry key in
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_Oracle_10g.
打开注册表,通过命令regedit。找到到文中提示的路径,发现NLS_LANG键的值为:
SIMPLIFIED CHINESE_CHINA.ZHS16GBK
修改为:SIMPLIFIED CHINESE_CHINA.AL32UTF8即可
还有一种可能是由于安装11g的时候没选择自定义安装造成的
Database character set (AL32UTF8) and Client character set (ZHS16GBK) are different.
Character set conversion may cause unexpected results.
Note: you can set the client character set through the NLS_LANG environment variable or the NLS_LANG registry key in
HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/KEY_OraDb11g_home
SIMPLIFIED CHINESE_CHINA.ZHS16GBK 包含 AMERICAN_AMERICA.AL32UTF8.
这可是个麻烦事,不是改客户端字符集的问题。要改数据库的字符集:
SQL> conn /as sysdba
SQL> shutdown immediate;
SQL> startup mount
SQL> ALTER SYSTEM ENABLE RESTRICTED SESSION;
SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
SQL> ALTER SYSTEM SET AQ_TM_PROCESSES=0;
SQL> alter database open;
SQL> ALTER DATABASE CHARACTER SET ZHS16GBK;
ORA-12712: new character set must be a superset of old character set
提示我们的字符集:新字符集必须为旧字符集的超集,这时我们可以跳过超集的检查做更改:
SQL> ALTER DATABASE character set INTERNAL_USE ZHS16GBK;
--我们看到这个过程和之前ALTER DATABASE CHARACTER SET操作的内部过程是完全相同的,也就是说INTERNAL_USE提供的帮助就是使Oracle数据库绕过了子集与超集的校验.
SQL> select * from v$nls_parameters;
SQL> shutdown immediate;
SQL> startup
SQL> select * from v$nls_parameters;
以后安装oracle11g的时候记得选择自定义安装,把这个字符集的事情事先弄好
相关推荐
Oracle11g 字符集 AL32UTF8 修改为ZHS16GBK .
个人工作总结,仅供参考。oracle库字符集ZHS16GBK到AL32UTF8的分析研究及方案,原因是系统使用中支持维文的显示。
案例:从Linux导出的数据导入到windows环境中发现字符集安装时候忘了修改为zhs16gbk(是原来的al32utf8)。
变量值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK 系统变量Path中添加如D:\oracle\instantclient\instantclient 4、PLSQl参数修改,配置好后,重新启动生效(位置为工具-首选项) 启动PL/SQL Developer,在登录窗口...
"PL/Sqldeveloper远程连接服务器oracle数据库的配置" oracle数据库是业界最流行的关系型数据库管理系统之一,PL/SQL Developer是oracle官方提供的一款功能强大的数据库客户端工具。为了能够远程连接服务器oracle...
首先,需要下载 32 位的 Oracle Instant Client,因为 32 位 PB、 PL/SQL 无法调用 64 位的 oci.dll。下载地址为 http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html。选择 ...
ZHS16GBK 中文字符,用于处理oracle中文乱码
PL/SQL Developer Version 10.0.5.1710 01.302967 - Unlimited user license Windows 7 (64-bit) 6.1 Build 7601 (Service Pack 1) ... NLS_NCHAR_CHARACTERSET: AL16UTF16 NLS_CHARACTERSET: ZHS16GBK
java.sql.SQLException: 不支持的字符集 (在类路径中添加 orai18n.jar): ZHS16GBK ……
此外,需要设置 ORACLE 的语言,添加环境变量 NLS_LANG,值为 SIMPLIFIED CHINESE_CHINA.ZHS16GBK。如果不清楚远程数据库的 ORACLE 语言,可以使用命令 select * from nls_instance_parameters; 查看 NLS_LANGUAGE ...
为解决 navicat连接oracle报错:ORA-12737 Instant Client Light:unsupported server character set ZHS16GBK 错误,而准备的文件
Linux 下修改Oracle 10G的字符集:WE8ISO8859P1 修改为 ZHS16GBK 在我的机器上试过了,非常有效! //测试oracle 10g别的版本没试不敢保证
ORA-12737: Instant Client Light: unsupported server character set CHS16GBK/ZHS16GBK解决方案
NLS_LANG=AMERICAN_AMERICA.ZHS16GBK 否则出现:ORA-12154: TNS:could not resolve the connect identifier specified错误 如果之前安装了Oracle 又卸载,会遗留NLS_LANG=NA的键值. 输入RegEdit打开注册表HKEY_...
1、把oracle_dll文件夹拷贝到D盘根目录下 2、配置“D:\oracle_dll\network\ADMIN”目录下的“tnsnames.ora”文件 ... 绿点的地方表示需要修改处,第一个为文件夹名称,第二个...变量值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK
NLS_LANG = SIMPLIFIED CHINESE_CHINA.ZHS16GBK TNS_ADMIN = D:\install\PLSQL\instantclient_11_2 三. PL/SQL Developer 环境设置 1. 位置 工具 -> 首选项 -> 连接 2. 设置 Oracle主目录名 = D:\...
4、设置ORACLE的语言,添加环境变量NLS_LANG ,值为SIMPLIFIED CHINESE_CHINA.ZHS16GBK 5、下载并安装PL.SQL.Developer配置应用 下载地址:PL/SQL Developer 配置tools->preferences->connection Oracle Home ...
SQL> ALTER DATABASE CHARACTER SET ZHS16GBK; 先把数据库中的有中文乱码的清空了。 然后在执行。这是有可能报错 执行这个ALTER DATABASE character set INTERNAL_USE ZHS16GBK; 跳过字符集检查 关闭数据库 ...
BLOG_Oracle_lhr_将US7ASCII字符集的dmp文件导入到ZHS16GBK字符集的数据库中.pdfBLOG_Oracle_lhr_将US7ASCII字符集的dmp文件导入到ZHS16GBK字符集的数据库中.pdf
免安装Oracle客户端,绿色无公害。 说明: ... 2、instantclient_10_2为oracle 10 绿色精简...set nls_lang=SIMPLIFIED CHINESE_CHINA.ZHS16GBK set LANG=zh_CN.GBK start PLSQLDev.exe 作用:设置临时变量,启动plsql