Oracle定义varchar2()类型存储汉字的长度问题
程序员文章站
2022-06-16 20:54:02
...
varchar2最大是4000 字节 ,( 在PL/SQL中变量类型最大32767字节 ) 能存放多少字符,那么就得看你的oracle字符集: ( select userenv('language') from dual; ) 如果字符集是16位编码的,ZHS16GBK,那么每个字符16位,2字节,所以可以容纳2000字符。 如果
varchar2最大是4000字节,(在PL/SQL中变量类型最大32767字节)
能存放多少字符,那么就得看你的oracle字符集:(select userenv('language') from dual;)
如果字符集是16位编码的,ZHS16GBK,那么每个字符16位,2字节,所以可以容纳2000字符。
如果是32位编码的字符集,那么只能存储 1000个字符。
例如:
varchar(50) 表示该字段类型为varchar2类型,长度为50,可以存单字节字符50个,如字母、数字等,可以存储双字节字符25个,如汉字。不同的是,若输入的不足,则以空格填充。
varchar2(50) 表示该字段类型为varchar2类型,长度为50,可以存单字节字符50个,如字母、数字等,可以存储双字节字符25个,如汉字。
nvarchar2(50)表示该字段类型为nvarchar2,长度为50,不论英文,数字,中文都能存50个。