Oracle 內建資料型別 字元

2021-06-27 12:08:57 字數 3083 閱讀 8038

-- start

create table test

( -- 語法:char [(size [byte | char])]

-- 預設長度(size)是 1,最大長度是 2000

-- 預設修飾符是 byte, 但可以通過修改引數 nls_length_semantics 來設定預設值為 char

-- select * from nls_session_parameters where parameter='nls_length_semantics'

col1 char,

-- 同 col1 相同

col2 char(1 byte),

-- 根據資料庫字符集的不同,char 由 1 到 4 byte 組成,

-- 所以如果你的資料庫是此類字符集,那麼推薦你使用 char

-- 由於效能的原因,oracle 推薦我們不要指定長度修飾符,而是通過 nls_length_semantics 來設定

-- alter session set nls_length_semantics=char

col3 char(10 char)

);-- 語法 1:''

-- 如果要輸入單引號,用兩個單引號代表乙個單引號

insert into test values ('a', '1', 'i''m bo');

-- 語法 2:q'delimiter *** delimiter'

insert into test values ('b', '2', q'/i'm bo/');

insert into test values ('c', '3', q'[i'm bo]');

insert into test values ('d', '4', q'8i'm bo8');

insert into test values ('e', '5', q'ki'm bok');

insert into test values ('f', '6', q'');

create table test

( -- 語法:varchar2(size [byte | char])

-- 如果 max_string_size=standard, 最大長度是 4000 bytes

-- 如果 max_string_size=extended, 最大長度是 32767 bytes

-- 預設修飾符是 byte, 但可以通過修改引數 nls_length_semantics 來設定預設值為 char

-- select * from nls_session_parameters where parameter='nls_length_semantics'

col1 varchar2(10),

-- 同 col1 相同

col2 varchar2(10 byte),

-- 由於效能的原因,oracle 推薦我們不要指定長度修飾符,而是通過 nls_length_semantics 來設定

-- alter session set nls_length_semantics=char

col3 varchar2(10 char)

);-- 語法 1:''

-- 語法 2:q'delimiter *** delimiter'

insert into test values ('i''m bo', q'[i'm bo]', q'/i'm bo/');

insert into test values (q'8i'm bo8', q'ki'm bok', q'');

create table test

( -- 語法:nchar[(size)]

-- 預設長度(size)是 1 個字元(char),最大長度是 2000 個位元組(byte),注意是位元組,

-- 如果資料庫編碼 1 個字元由 2 個位元組組成,那麼最大長度是 1000 個字元

col1 nchar,

-- nchar 列只能插入 unicode 編碼的字串,由於編碼不同,char 和 nchar 是不相容的

col2 nchar(10)

);-- 語法 1:n'***'

insert into test values (n'a', n'尚波');

-- 語法2:nq'delimiter *** delimiter'

insert into test values (n'a', nq'[尚波]');

insert into test values (n'b', nq'8尚波8');

insert into test values (n'c', nq'h尚波h');

insert into test values (n'd', nq'/尚波/');

create table test

( -- 語法:nvarchar2(size)

-- nvarchar2 列只能插入 unicode 編碼的字串

-- 如果 max_string_size=standard, 最大長度是 4000 bytes

-- 如果 max_string_size=extended, 最大長度是 32767 bytes

col1 nvarchar2(10)

);-- 語法 1:n'***'

insert into test values (n'尚波');

-- 語法2:nq'delimiter *** delimiter'

insert into test values (nq'[尚波]');

insert into test values (nq'8尚波8');

insert into test values (nq'h尚波h');

insert into test values (nq'/尚波/');

--更多參見:oracle sql 精萃

-- last edited on 2015-07-04

-- created by shangbo on 2014-12-07

-- end

Oracle 內建資料型別 大物件

start create table test blob 列儲存的是二進位製流 blob 列參與事務,可恢復 col blob insert into test values empty blob select from test create table test clob 列儲存字元資料 clo...

內建資料型別

內建 顧名思義,指內部設定,如內建型別 內建api 內建類 內建方法 等 內建資料型別 顧名思義,指內部設定的資料型別,就是某種語言內部自己定義的一些東西的型別,如 基本資料型別 引用型別 變數型別 等 性質 1 內部設定,內部定義 2 型別,分類 外接型別 與內建型別相反的是外接型別,指內外設定的...

Hive內建資料型別

hive的內建資料型別可以分為兩大類 1 基礎資料型別 2 複雜資料型別。其中,基礎資料型別包括 tinyint,smallint,int,bigint,boolean,float,double,string,binary,timestamp,decimal,char,varchar,date。下面...