关于oracle的字符集:

一.oracle的字符集是在oracle数据库创建的时候指定的,一般情况下不能更改,所以在数据库创建的时候应该选择好字符集;

CHARACTER SET US7ASCII

NATIONAL CHARACTER SET AL16UTF16

其中

Characterset:是指数据库中采用的字符集,用于存储数据库中charvarcharlongclob等类型数据;存储sqlpl/sql代码;用来标识表明,列名;

National character set:是指国家字符集,用于存储ncharnvarchar等类型数据;

Oracle的字符集命名规则: ,例如:zhs16gbk

二.字符集文件:字符集文件是在数据库中单独存储,这些文件由环境变量ora_nls指定:

9i$oracle_home/ocommon/nls/admin/data

10g:$oracle_home/nls/data]

可以用locale builder 打开:

 

SQL*Plus: Release 9.0.1.0.1 - Production on 星期一 2 23 18:56:09 2009

(c) Copyright 2001 Oracle Corporation.  All rights reserved.

SQL> conn sys/laojiu as sysdba;

已连接。

SQL> select dump('') from dual;

DUMP('')

---------------------

Typ=96 Len=2: 194,222

SQL> select concat(to_char(194,'xx'),to_char(222,'xx')) from dual;

CONCAT

------

 c2 de

SQL> select to_number('c2de','xxxxx') from dual;

TO_NUMBER('C2DE','XXXXX')

-------------------------

                    49886

SQL> select chr(49886) from dual;

CH

--

三.源数据库字符集(A),导出客户端字符集(B),目标数据库字符集(C),导入客户端字符集(D):(期中客户端的字符集用nls_lang设置)

以上三者字符集在进行数据迁移时候很有用,出现的情况有以下几种;

1.       AC相同:在进行数据库数据的导出导入的时候,将设置成:A=B=C=D

2.       AC不相同:在进行数据库数据的导出导入的时候,若A=B,则D=B,这样转换只在数据端;

3.       Dnls_lang的设置和数据库C相同,那么数据库不经过转换就直接插入数据库中;

4.       Dnls_lang的设置和数据库C不相同,数据要转换后才能插入数据库中。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/11782778/viewspace-557496/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/11782778/viewspace-557496/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值