`

【Oracle】服务端编码和客户端编码

阅读更多

应一直受服务端编码和客户端编码要一致误导,结果害了我半个小时时间,来解决这个小问题,现在把解决记录一下,以备忘记: 

出现中文乱码的主要原因是字符集不同。在Oracle中,我们关心三个地方的字符集: 

先来查看一下数据库字符集: 
在Oracle中可能使用Select userenv('language') from dual;

或者:select * from V$NLS_PARAMETERS

或者:Select name, value$ from props$;查看。 

l Oracle服务器内部的字符集 
修改方法: 
connect sys/chang_on_install 
update props$ set value$='TRADITIONAL CHINESE_TAIWAN.AL32UTF8'where name='NLS_CHARACTERSET'; 
commit; 

2 NLS_LANG变量里保存的字符集 

这个是Oracle设置的一个变量。在Windows中,这个变量保存在注册表中: 
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0 保存着NLS_LANG变量。 

在Unix/Linux中,则需要自己进行设置,在.profile里面加上 NLS_LANG=AMERICAN_AMERICA.ZHS16GBK 
export NLS_LANG 

3 客户端应用的字符集 

下面是我用到的字符集 
american_america.AL32UTF8 
TRADITIONAL CHINESE_TAIWAN.ZHT16MSWIN950 
TRADITIONAL CHINESE_TAIWAN.AL32UTF8 
AMERICAN_AMERICA.WE8ISO8859P1 
AMERICAN_AMERICA.ZHS16GBK 

特别注意:如果服务端编码为AL32UTF8,那么客户端就应该安装自己环境来设置字符编码。 
比如我有一个服务器端,其中两个客户端一个为简体,一个为繁体: 
服务器端字符集设置:american_america.AL32UTF8 
简体客户端字符集设置:AMERICAN_AMERICA.ZHS16GBK 
繁体客户端字符集设置:TRADITIONAL CHINESE_TAIWAN.ZHT16MSWIN950 

这样toad和sqlplus不论在繁体还是简体都可以正常显示汉字了。

分享到:
评论

相关推荐

    oracle查看字符集后修改oracle服务端和客户端字符集的步骤

    1.oracle server端字符集查询 代码如下:select userenv(’language’) from dual; server字符集修改: 将数据库启动到RESTRICTED模式下做字符集更改: 代码如下:SQL>conn /as sysdba SQL>shutdown immediate;  ...

    Ourmsg2014

    7、客户端和服务端均支持所有.net4.0框架能安装的windows操作系统(X32/X64),即XP、Vista、win7、win8、win2003server、win2008server等。 8、UTF8编码的数据交换,支持多国语言。 说明:文件传输、远程协助、音频...

    华蜀网络办公自动化管理系统

    <br>数据库系统 SQL Server/Oracle/MYSQL <br>硬件要求 服务端:最低P3 500MHZ 128M内存,建议P4 2.0GHZ 512M内存,所需磁盘空间视上传附件数量及大小而定。 客户端:能顺畅浏览网页即可 <br>...

    亮剑.NET深入体验与实战精要2

    10.3 基于TCP协议的客户端和服务端 398 10.3.1 TcpListener 实现网络服务端 398 10.3.2 TcpClient实现网络客户端 399 本章常见技术面试题 401 常见面试技巧之经典问题巧回答 401 本章小结 402 第11章 Windows ...

    亮剑.NET深入体验与实战精要3

    10.3 基于TCP协议的客户端和服务端 398 10.3.1 TcpListener 实现网络服务端 398 10.3.2 TcpClient实现网络客户端 399 本章常见技术面试题 401 常见面试技巧之经典问题巧回答 401 本章小结 402 第11章 Windows ...

    vc++ 开发实例源码包

    它包括客户端和服务端,客户端软件主要作用是监测本主机的活动,并将监测到的信息定时发送给服务器。服务器可以将收集到的信息以柱状图和文件列表以及其他方式呈现给用户,以便用户对局域网内的主机进行监测和管理。...

    vc++ 应用源码包_1

    它包括客户端和服务端,客户端软件主要作用是监测本主机的活动,并将监测到的信息定时发送给服务器。服务器可以将收集到的信息以柱状图和文件列表以及其他方式呈现给用户,以便用户对局域网内的主机进行监测和管理。...

    JAVA上百实例源码以及开源项目

     Java编写的山寨QQ,多人聊天+用户在线,程序分服务端和客户端,典型C/S结构,  当用户发送第一次请求的时候,验证用户登录,创建一个该qq号和服务器端保持通讯连接得线程,启动该通讯线程,通讯完毕,关闭Scoket...

    JAVA上百实例源码以及开源项目源代码

     Java编写的山寨QQ,多人聊天+用户在线,程序分服务端和客户端,典型C/S结构,  当用户发送第一次请求的时候,验证用户登录,创建一个该qq号和服务器端保持通讯连接得线程,启动该通讯线程,通讯完毕,关闭Scoket...

    vc++ 应用源码包_2

    它包括客户端和服务端,客户端软件主要作用是监测本主机的活动,并将监测到的信息定时发送给服务器。服务器可以将收集到的信息以柱状图和文件列表以及其他方式呈现给用户,以便用户对局域网内的主机进行监测和管理。...

    vc++ 应用源码包_6

    它包括客户端和服务端,客户端软件主要作用是监测本主机的活动,并将监测到的信息定时发送给服务器。服务器可以将收集到的信息以柱状图和文件列表以及其他方式呈现给用户,以便用户对局域网内的主机进行监测和管理。...

    vc++ 应用源码包_5

    它包括客户端和服务端,客户端软件主要作用是监测本主机的活动,并将监测到的信息定时发送给服务器。服务器可以将收集到的信息以柱状图和文件列表以及其他方式呈现给用户,以便用户对局域网内的主机进行监测和管理。...

    vc++ 应用源码包_3

    它包括客户端和服务端,客户端软件主要作用是监测本主机的活动,并将监测到的信息定时发送给服务器。服务器可以将收集到的信息以柱状图和文件列表以及其他方式呈现给用户,以便用户对局域网内的主机进行监测和管理。...

    java开源包1

    ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...

    java开源包11

    ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...

    java开源包2

    ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...

    java开源包3

    ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...

    java开源包6

    ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...

    java开源包5

    ftp4j是一个FTP客户端Java类库,实现了FTP客户端应具有的大部分功能文件(包括上传和下 载),浏览远程FTP服务器上的目录和文件,创建、删除、重命,移动远程目录和文件。ftp4j提供多种方式连接到远程FTP服务器包括...

Global site tag (gtag.js) - Google Analytics