orecal数据库一汉字等于多少字符(oracle一个汉字占几位)

orecal数据库一汉字等于多少字符(oracle一个汉字占几位)我们在 ORACLE 数据库中常见的两种字符集 AL32UTF8 ZHS16GBK 什么是字符集 nbsp 在计算机语言中每个国家对于自己国家语言的二进制代码设计是不一样的 例如 zhs16gbk 简体中文字符集 中 nbsp 01010 国 01100 nbsp 0 utf8 A 010 B 100 C 110 nbsp ABC 0 0 nbsp ABC 乱码 字符集是在创建数据库时选择的



我们在ORACLE数据库中常见的两种字符集:AL32UTF8/ZHS16GBK

什么是字符集: 
在计算机语言中每个国家对于自己国家语言的二进制代码设计是不一样的,例如:
zhs16gbk 简体中文字符集 :中   01010 国 01100  0
utf8 A 010 B 100 C 110  ABC 0
0  ABC
乱码




DBA在建库之间 数据库叫什么 用什么字符集

查询操作系统字符集:
locale  (  unix or linux)
chcp  (windows)

查询数据库所支持的数据库字符集:

select * from v$nls_valid_values where parameter='CHARACTERSET';


数据库服务器字符集select * from nls_database_parameters where parameter like '%CHARACTERSET%';  其来源于props$,是表示数据库的字符集。
  
客户端字符集环境 select * from v$nls_parameters where parameter in   ( 'NLS_LANGUAGE','NLS_TERRITORY','NLS_CHARACTERSET');  --查看客户端字符集
  



表示客户端的字符集的设置,可能是参数文件,环境变量或者是注册表

影响Oracle数据库字符集最重要的参数是NLS_LANG参数。

它的格式如下: NLS_LANG = language_territory.charset

它有三个组成部分(语言、地域和字符集),每个成分控制了NLS子集的特性。

其中:

Language: 指定服务器消息的语言, 影响提示信息是中文还是英文

Territory: 指定服务器的日期和数字格式

Charset:  指定字符集。

如:AMERICAN _ AMERICA. ZHS16GBK

从NLS_LANG的组成我们可以看出,真正影响数据库字符集的其实是第三部分。
 
set NLS_LANG=AMERICAN_CHINA.ZHS16GBK
set NLS_LANG=Simplified Chinese_china.ZHS16GBK


SQL> select * from nls_database_parameters where parameter like '%CHARACTERSET%';--当前数据库使用的字符集

ALTER SESSION SET NLS_LANGUAGE= 'SIMPLIFIED CHINESE' NLS_TERRITORY= 'CHINA' NLS_NUMERIC_CHARACTERS='AL32UTF8';

alter session set NLS_NUMERIC_CHARACTERS= '.,';

export  NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

set NLS_LANG=AMERICAN_AMERICA.ZHS16CGB

set NLS_LANG=AMERICAN_AMERICA.US7ASCII

set NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16CGB"

set NLS_LANG=AMERICAN_AMERICA.AL32UTF8

查询 oracle client  端的字符集:
在 windows 平台下,就是注册表里面相应 OracleHome 的 NLS_LANG。还可
以在 dos 窗口里面自己设置,
比如: set nls_lang=AMERICAN_AMERICA.ZHS16GBK
这样就只影响这个窗口里面的环境变量。



在 unix 平台下,就是环境变量 NLS_LANG。
$echo $NLS_LANG
AMERICAN_AMERICA.ZHS16GBK
如果检查的结果发现 server 端与 client 端字符集不一致,请统一修改为同
server 端相同的字符集。



今天的文章 orecal数据库一汉字等于多少字符(oracle一个汉字占几位)分享到此就结束了,感谢您的阅读。
编程小号
上一篇 2026-03-08 14:46
下一篇 2026-03-08 15:27

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/51521.html