构建Oracle数据库的字符集知识(查询oracle的字符集)
构建Oracle数据库的字符集知识
字符集(character set)是SQL技术中十分重要的知识点,在Oracle数据库的构建过程中它一般是重要的一环,要想能够正确的建立Oracle数据库,有必要理解Oracle数据库中字符集的概念和它的使用,然后根据自己的实际需求,做出正确的选择,以确保数据的完整性.
1. 字符集的概念:
字符集(character set) 用于定义用于存储和显示数据的语言字符范围。其中每个字符有一个特定的编码系统,根据字符种类去指定一种不同的编码,以表示一个字符集。Oracle 数据库使用比特编码,比如7-bits,8-bits 和 16-bits。
2. 支持字符集:
Oracle 支持多种不同语言,此外,它还提供了多种Character Set 能够支持不同的字符和字母。请参考下面的链接查看Oracle支持的Character Sets:
https://docs.oracle.com/cd/B28359_01/server.111/b28319/ch2characterset.htm#CNCPT1318
也可以使用SQL命令查看有哪些字符集:
SELECT *
FROM V$NLS_CHARACTERSETS;
3. Oracle字符集选项:
在构建Oracle数据库时一般会有下面两个字符集选项:
1)数据库字符集:
数据库字符集定义了用来表示数据库中的字符的编码集。它是定义数据存放和移植的最基本的概念。设置这个字符集后,无论任何位置,读取和写入数据库中的字符均使用该字符集的编码系统,保证存放和移植的有效性。另外,为了保证数据安全性,原有字符集变更时,可能需要重新部署こ数据库。
2)客户端字符集:
客户端字符集指的是Oracle数据库客户端字符集,其设置应当符合实际字符集环境下连接数据库时使用的字符集,可以保证数据不会乱码。
4. Oracle字符集设置:
Oracle 支持多种Character Set,但是它们的设置步骤以及 order 很重要。通常情况下,可以像下面的步骤顺序一样做:
(1) 设置NLS_LANG环境变量:
通过设置NLS_LANG环境变量来设置Oracle客户端的字符集,详情见链接:
https://docs.oracle.com/cd/E11882_01/server.112/e10595/ch12charsets.htm#CNCPT756
(2) 构建数据库时指定字符集:
在构建数据库时需要指定数据库字符集,指定完成后,Oracle就会将该字符集设置为数据库的默认字符集。这里,需要注意:一旦指定完成,就无法改变该字符集,只能从头重新创建数据库。
以上就是构建Oracle数据库的字符集知识一些常用的概念及它的设置,让我们在构建Oracle数据库时能够更加熟悉它,熟练操作。