1.在修改varchar(2000)为varchar(4000),抛出如下错误:

ORA-00910:specified length too long for its datatype_数据库

varchar对于汉字占两个字节,对于数字,英文字符是一个字节,占的内存小,varchar2一般情况下把所有字符都占两字节处理。具体要看数据库使用的字符集,比如GBK,汉字就会占两个字节,英文1个,如果是UTF-8,汉字一般占3个字节,英文还是1个。
varchar对空串不处理,varchar2将空串当做null来处理。
varchar存放固定长度的字符串,最大长度是2000,varchar2是存放可变长度的字符串,最大长度是4000.

如果是要更换不同的数据库,例如mysql,那么就用varchar,如果就用oracle,那么用varchar2比较好一点。

将varchar(2000)修改成varchar2(4000),问题解决。

版权声明:本文为博主原创文章,未经博主允许不得转载。

oracle,linux