以下的文章主要是介绍Oracle数据字符集与排序,以下的文章是对Oracle数据字符集与排序进行了实际操作,由此来详细说明在Oracle数据库中的相关字符集与相关排序的某些命令,特此整理出来,以备后用。
Java代码
- SQL> select * from v$nls_valid_values where parameter='CHARACTERSET' order by 2;
- PARAMETER VALUE
- ---------------------------------------------------------------- -----------------------
- CHARACTERSET AL16UTF16
- CHARACTERSET AL24UTFFSS
- CHARACTERSET AL32UTF8
- SQL> select * from nls_database_parameters;
- PARAMETER VALUE
- ------------------------------ ---------------------------------------
- NLS_LANGUAGE AMERICAN--合法的语言名称
- NLS_TERRITORY AMERICA--合法的地域名称
- NLS_CURRENCY $
- NLS_ISO_CURRENCY AMERICA
- NLS_NUMERIC_CHARACTERS .,
- NLS_CHARACTERSET ZHS16GBK--数据库字符集
- NLS_CALENDAR GREGORIAN
- NLS_DATE_FORMAT DD-MON-RR--日期格式
- NLS_DATE_LANGUAGE AMERICAN
- NLS_SORT BINARY--排序方式
- NLS_TIME_FORMAT HH.MI.SSXFF AM
- NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM
- NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR
- NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR
- NLS_DUAL_CURRENCY $
- NLS_COMP BINARY--和排序相关的东东,具体是什么不清楚
- NLS_LENGTH_SEMANTICS BYTE
- NLS_NCHAR_CONV_EXCP FALSE
- NLS_NCHAR_CHARACTERSET AL16UTF16--国家字符集
- NLS_RDBMS_VERSION 10.1.0.2.0
已选择20行。
已用时间: 00: 00: 00.03
- SQL> create table char_t(c1 varchar2(8),c2 nvarchar2(8));
表已创建。
已用时间: 00: 00: 00.21
- SQL> select dbms_metadata.get_ddl('TABLE','CHAR_T') FROM DUAL;
- DBMS_METADATA.GET_DDL('TABLE','CHAR_T')
- --------------------------------------------------------------------------------
- CREATE TABLE "SCOTT"."CHAR_T"
- ( "C1" VARCHAR2(8),
- "C2" NVARCHAR2(8)
- ) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
- STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
- PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
- TABLESPACE "USERS"
已用时间: 00: 00: 05.15
- SQL> INSERT INTO char_t values('a','a');
已创建 1 行。
已用时间: 00: 00: 00.01
- SQL> commit;
提交完成。
已用时间: 00: 00: 00.00
- SQL> select length(c1),length(c2),lengthb(c1),lengthb(c2) from char_t;
- LENGTH(C1) LENGTH(C2) LENGTHB(C1) LENGTHB(C2)
- ---------- ---------- ----------- -----------
- 1 1 1 2
已用时间: 00: 00: 00.00
- SQL> insert into char_t values('中','中');
已创建 1 行。
已用时间: 00: 00: 00.00
上述的相关内容就是对Oracle数据字符集和排序的描述,希望会给你带来一些帮助在此方面。
【编辑推荐】