Oracle char varchar2 nvarchar2

數據庫字符集

首先須要強調下 Oracle 的數據庫字符集屬性會影響字符類型的容量, 能夠經過執行該 sql select userenv('language') from dual;查看 Oracle 的數據庫字符集.sql

  • 若是字符集編碼是16-bit的,那麼每一個字符佔16位,也就是2字節.
  • 若是字符集編碼是32-bit的,那麼每一個字符佔32位,也就是4字節.

Tips:數據字符集不一樣的狀況下進行數據遷移,可能會出現長度異常的問題.數據庫

char

示例:char(5)表示該字段的數據類型爲char,可存在5個字節長度的字符,不足則自動空格填充,也就是你若是存入一個字符"A",自動會在後面加上4個空格,讀取出來會變成"A空格空格空格空格"編碼

varchar2

最大長度爲4000.code

示例:varchar2(50)標識該字段的數據類型爲varchar,可存放單個字節長度的字符50個,好比英文/數字,但一個漢字佔2個字節長度(受數據庫字符集影響).ip

nvarchar2

最大長度爲2000.it

示例:nvarchar(50)表示該字段的數據類型爲nvarchar,可存放單個字節長度的字符50個,不論字符是漢字/英文/數字都只佔1個字節長度(受數據庫字符集影響).select

相關文章
相關標籤/搜索