2015-02-11 78 views
0

我在我的模型(針對Oracle數據庫)中有以下字符字段。Django Oracle數據庫 - Varchar2對NVarchar2

trans_status = models.CharField(max_length=10, blank=True, null=True) 

爲什麼Django將此字段創建爲NVARCHAR2而不是VARCHAR2?我的意思是,

爲什麼

trans_status   NVARCHAR2(10) NULL, 

,而不是

trans_status   VARCHAR2(10) NULL, 

的區別是什麼? Django如何決定一個而不是另一個?

回答

1

NVARCHAR2將數據存儲具有16位的字符,並VARCHAR2將存儲與8位字符中的數據。 NVARCHAR2將存儲unicode字符(如阿拉伯字符),但會消耗比VARCHAR2多兩倍的尺寸。