欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Oralce中VARCHAR2()與NVARCHAR2()的區(qū)別介紹

 更新時(shí)間:2016年12月14日 09:54:12   投稿:daisy  
這篇文章主要給大家詳細(xì)介紹了關(guān)于Oralce中VARCHAR2()與NVARCHAR2()的區(qū)別,文中先通過翻譯官方的介紹進(jìn)行區(qū)別總結(jié),然后由一個實(shí)戰(zhàn)示例代碼進(jìn)行演示,相信對大家的理解會很有幫助,有需要的朋友們下面來跟著小編一起看看吧。

一、先來看看Oralce中VARCHAR2()和NVARCHAR2()的官方定義

官方文檔定義如下:

VARCHAR2(size [BYTE | CHAR])

Variable-length character string having maximum length size bytes or characters. Maximum size is 4000 bytes or characters, and minimum is 1 byte or 1 character. You must specify size for VARCHAR2.
BYTE indicates that the column will have byte length semantics. CHAR indicates that the column will have character semantics.

NVARCHAR2(size)

Variable-length Unicode character string having maximum length size characters. The number of bytes can be up to two times size for AL16UTF16 encoding and three times size for UTF8 encoding. Maximum size is determined by the national character set definition, with an upper limit of 4000 bytes. You must specify size for NVARCHAR2.

二、中文翻譯:

VARCHAR2(size [BYTE | CHAR])

具有最大長度的字節(jié)數(shù)(bytes)或字符數(shù)(char)的可變長度的字符類型。最大長度為4000字節(jié)/字符,最小長度是1字節(jié)/字符。你必須為VARCHAR2()類型指定大小。

BYTE代表該列以字節(jié)計(jì)算長度,CHAR代表該列以字符計(jì)算長度。

NVARCHAR2(size)

具有最大長度的帶有字符集屬性的可變長度的字符類型。它的長度是AL16UTF16字符集的2倍,UTF8字符集的三倍。它的最大長度取決于字符集,上限位4000字節(jié)。您必須為NVARCHAR2()類型指定大小。

三、實(shí)戰(zhàn)演練

使用字符集為UTF8。

# 驗(yàn)證NVARCHAR2(size)與VARCHAR2(size CHAR)相似
SQL> create table t_varchar2(name varchar2(6 CHAR));
Table created
SQL> insert into t_varchar2 values('中國');
1 row inserted
SQL> insert into t_varchar2 values('中華人民共和');
1 row inserted
SQL> insert into t_varchar2 values('中華人民共和國');
insert into t_varchar2 values('中華人民共和國')
ORA-12899: 列 "SCOTT"."T_VARCHAR2"."NAME" 的值太大 (實(shí)際值: 7, 最大值: 6)
SQL> create table t_nvarchar2(name nvarchar2(6));
Table created
SQL> insert into t_nvarchar2 values('中國');
1 row inserted
SQL> insert into t_nvarchar2 values('中華人民共和');
1 row inserted
SQL> insert into t_nvarchar2 values('中華人民共和國');
insert into t_nvarchar2 values('中華人民共和國')
ORA-12899: 列 "SCOTT"."T_NVARCHAR2"."NAME" 的值太大 (實(shí)際值: 7, 最大值: 6)
# 驗(yàn)證NVARCHAR2(sie)與VARCHAR(size CHAR)存在最大長度不同
SQL> create table t_varchar2(name varchar2(4000 CHAR));
Table created
SQL> create table t_nvarchar2(name nvarchar2(4000));
create table t_nvarchar2(name nvarchar2(4000))
ORA-00910: 指定的長度對于數(shù)據(jù)類型而言過長

四、區(qū)別總結(jié):

NVARCHAR2(size)VARCHAR2(size CHAR)相似,唯一的區(qū)別是NVARCHAR2(size)的最大長度是4000字節(jié)(實(shí)驗(yàn)測試結(jié)果是,在utf8的字符集下,最大長度為2000字符),而VARCHAR2(size CHAR)的最大長度是4000字符。

好了,以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。

相關(guān)文章

  • Oracle數(shù)據(jù)庫INSERT?INTO的幾種用法舉例

    Oracle數(shù)據(jù)庫INSERT?INTO的幾種用法舉例

    INSERT INTO語句可以有多種寫法,具體取決于插入的數(shù)據(jù)來源和目標(biāo),這篇文章主要給大家介紹了關(guān)于Oracle數(shù)據(jù)庫INSERT?INTO的幾種用法舉例,需要的朋友可以參考下
    2024-02-02
  • Oracle如何獲取數(shù)據(jù)庫系統(tǒng)的當(dāng)前時(shí)間

    Oracle如何獲取數(shù)據(jù)庫系統(tǒng)的當(dāng)前時(shí)間

    這篇文章主要介紹了Oracle如何獲取數(shù)據(jù)庫系統(tǒng)的當(dāng)前時(shí)間問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Oracle數(shù)據(jù)庫統(tǒng)計(jì)信息方法詳解

    Oracle數(shù)據(jù)庫統(tǒng)計(jì)信息方法詳解

    這篇文章主要介紹了如何查看和收集Oracle數(shù)據(jù)庫中的統(tǒng)計(jì)信息,包括表、索引和列的統(tǒng)計(jì)信息,介紹了DBMS_STATS包的功能和使用方法,以及如何通過分析和刪除統(tǒng)計(jì)信息來優(yōu)化數(shù)據(jù)庫性能,需要的朋友可以參考下
    2024-12-12
  • 限制ip訪問Oracle數(shù)據(jù)庫的方法步驟

    限制ip訪問Oracle數(shù)據(jù)庫的方法步驟

    這篇文章主要給大家介紹了關(guān)于限制ip訪問Oracle數(shù)據(jù)庫的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者使用Oracle數(shù)據(jù)庫具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • Oracle中的table()函數(shù)使用

    Oracle中的table()函數(shù)使用

    這篇文章主要介紹了Oracle中的table()函數(shù)的使用,提高查詢效率,利用table()函數(shù),可接收輸入?yún)?shù),然后將pl/sql?返回的結(jié)果集代替table,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05
  • Oracle中sql語句(+)符號代表連接的使用講解

    Oracle中sql語句(+)符號代表連接的使用講解

    今天小編就為大家分享一篇關(guān)于Oracle中sql語句(+)符號代表連接的使用講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • 在oracle數(shù)據(jù)庫里創(chuàng)建自增ID字段的步驟

    在oracle數(shù)據(jù)庫里創(chuàng)建自增ID字段的步驟

    本節(jié)主要介紹了在oracle數(shù)據(jù)庫里創(chuàng)建自增ID字段的步驟,需要的朋友可以參考下
    2014-07-07
  • oracle存儲過程常用的技巧(詳)

    oracle存儲過程常用的技巧(詳)

    存儲過程是在大型數(shù)據(jù)庫系統(tǒng)中存儲過程在數(shù)據(jù)庫中經(jīng)過第一次編譯后就不需要再次編譯,用戶通過指定存儲過程的名字并給出參數(shù)來,通過本篇文章帶領(lǐng)大家去學(xué)習(xí)oracle存儲過程常用的技巧,感興趣的朋友一起來學(xué)習(xí)吧
    2015-08-08
  • ORACLE 10G修改字符編碼沒有超字符集的限制

    ORACLE 10G修改字符編碼沒有超字符集的限制

    ORACLE 10G修改字符編碼沒有超字符集的限制,可以直接修改成自己想要字符串,之前已經(jīng)存在數(shù)據(jù)就需要重新再導(dǎo)入
    2014-08-08
  • Oracle數(shù)據(jù)庫中字符串截取最全方法總結(jié)

    Oracle數(shù)據(jù)庫中字符串截取最全方法總結(jié)

    Oracle提供了多種截取字符串的操作方法,可以根據(jù)具體需求選擇合適的方法進(jìn)行操作,下面這篇文章主要給大家總結(jié)介紹了關(guān)于Oracle數(shù)據(jù)庫中字符串截取的最全方法,需要的朋友可以參考下
    2024-03-03

最新評論