易截截图软件、单文件、免安装、纯绿色、仅160KB

解决oracle客户端乱码——SQLPLUS乱码解决

要解决Oracle的客户端乱码问题关键是要把服务器端使用的字符集跟客户端使用的字符集统一起来。Oracle客户端(Sqlplus)通过NLS_LANG环境变量来确定客户端使用的字符集。NLS_LANG
参数由以下部分组成:
NLS_LANG
=<Language>_<Territory>.<Clients Characterset>
NLS_LANG
各部分含义如下:
LANGUAGE指定:
-Oracle
消息使用的语言
-日期中月份和日显示
TERRITORY指定
-货币和数字格式
-地区和计算星期及日期的习惯
CHARACTERSET:
-控制客户端应用程序使用的字符集
通常设置或者等于客户端(如Windows)代码页
或者对于unicode应用设置为UTF8
在Windows上查看当前系统的代码页可以使用chcp命令:
E:\>chcp
活动的代码页: 936
代码页936也就是中文字符集 GBK,在Microsoft的官方站点上,我们可以遭到关于936代码页的具体编码规则,请参考以下链接:
http://www.microsoft.com/globaldev/reference/dbcs/936.htm
2. 查看 NLS_LANG 的方法
Windows使用:
echo %NLS_LANG%
如:
E:\>echo %NLS_LANG%
AMERICAN_AMERICA.ZHS16GBK
Unix使用:
env|grep NLS_LANG
如:
/opt/oracle>env|grep NLS_LANG
NLS_LANG=AMERICAN_CHINA.ZHS16GBK
PLSQL Developer之类Windows客户端设置,可以在注册表中更改NLS_LANG,具体键值位于:
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMExx\
xx指存在多个ORACLE_HOME时系统编号。
3. 查看数据库当前字符集参数设置
SELECT * from v$nls_parameters;

select * from nls_database_parameters

select userenv(‘language’) from dual;
4. 查看数据库可用字符集参数设置
SELECT * from v$nls_valid_values;
5. 客户端 NLS_LANG 的设置方法
Windows:
# 常用中文字符集
set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
# 常用unicode字符集
set NLS_LANG=american_america.AL32UTF8
可以通过修改注册表键值永久设置
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMExx\NLS_LANG
Unix:
# 常用unicode字符集
export NLS_LANG=american_america.AL32UTF8
# 常用中文字符集
export NLS_LANG="Simplified Chinese_china".ZHS16GBK
可以编辑 bash_profile 文件进行永久设置
vi .bash_profile
NLS_LANG="Simplified Chinese_china".ZHS16GBK export NLS_LANG
# 使 bash_profile 设置生效
source .bash_profile


相关文档:

Oracle数据库分区表操作方法


Oracle数据库分区表操作方法
(2009-10-19 16:20:45)
标签:
杂谈
 
摘要:在大量业务数据处理的项目中,能考虑使用分区表来提高应用系统的性能并方便数据管理,本文周详介绍了分区表的使用。
  在大型的企业应用或企业级的数据库应用中,要处理的数据量通常能达到几十到几百GB,有的甚至能到TB级。虽然存储 ......

Oracle和SQL Server在事务处理上的区别

摘 要:本文讨论了Oracle和SQL Server的在事务处理上的区别,并分析了其实现机制的差异。
关键词:Oracle;SQL Server;事务;事务隔离级别;DDL。
事务处理是所有大型数据库产品的一个关键问题,各数据库厂商都在这个方面花费了很大精力,不同的事务处理方式会导致数据库性能和功能上的巨大差异。
事务处理也是数据库管 ......

ORACLE NUMBER类型详解


1>.NUMBER类型细讲:
Oracle number datatype 语法:NUMBER[(precision [, scale])]
简称:precision --> p
      scale     --> s
NUMBER(p, s)
范围: 1 <= p <=38, -84 <= s <= 127
保存数据范围:-1.0e-130 <= number value < 1.0e+1 ......

oracle存储过程代码实例

1、用来插入大量测试数据的存储过程
CREATE OR REPLACE PROCEDURE INSERTAMOUNTTEST
(
ST_NUM        IN     NUMBER,
ED_NUM        IN     NUMBER
)
IS
BEGIN
declare
     ......

常用的ORACLE PLSQL管理命令

常用的ORACLE PL/SQL管理命令
        熟悉ORACLE管理的一定对这些命令不会陌生,不过对于我这个刚接触ORACLE管理的来说,还是有必要做下记录,以便随时查看。
    一 登录SQLPLUS
    sqlplus用户名/密码@数据库实例as登录角色;
  &nbs ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号