在设计Oracle数据库的时候需要为字段选取类型。对数据库中的varchar、varchar2和nvarchar、nvarchar2这几种数据类型一直不知道怎么选取。
varchar和varchar2:
Oracle中varchar和varchar2的区别不是很大,但是建议使用varchar2,varchar2用null代替varchar的空字符串。
varchar2和nvarchar2
nvarchar2相较与varchar2对汉字拥有更好的兼容性。varchar2(10)和nvarchar2(10)在都存储英文的情况下都可以存储10个英文字符,但是nvarchar2(10)可以存储10个汉字,而varchar2(10)只能存储5个汉字。varchar2最大长度支持4000个字符,nvarchar2最大长度支持4000个字符或4000个字节。
nvarchar和nvarchar2
nvarchar和nvarchar2基本相同,不同在于 nvarchar对于英文也是占用两个字符。比如nvarchar2(10)可以存储10个汉字或者10个英文,但是nvarchar(10)只能存储5个汉字或者5个英文。