alter table A modify (AA varchar2(40))

解决方案 »

  1.   

    alter table A modify (AA varchar2(40))
    您说得语句,从短数据变为长的可以,比如varchar2(40)->varchar2(64),
    但从长的变为短就不行了,比如比如varchar2(64)->varchar2(40)
      

  2.   

    我试过的,但在insert的时候,就会出现插入值得长度超过的错误提示,同时我已经用查过所有记录的长度都没有超过40。
      

  3.   

    alter table a add a2 varchar2(64)
    update a set a2=a1
    alter table drop column a1
    alter table add a1 varchar2(40)
    updat a set a1 = substrb(a2,1,40)
    alter table drop column a2
      

  4.   

    添加新列,然后把值转入,再drop旧列Oracle 不支持列宽缩窄