oracle 修改字段长度ALTER TABLE YSW412000 MODIFY SSSETSUNAME  NVARCHAR2(80)为什么执行完SQL后 我再查看 SSSETSUNAME  的长度没有发生变化??还有就是 主键是否也可以 直接用上面的语句进行修改?这个表中原来没有数据。
这个表曾经建过一次,后来我把他给删除了
用的是 DROP TABLE YSW412000 后来我重新建了一个与原来同名的表,字段也有相同,会对上面的操作有影响么?

解决方案 »

  1.   

    是不是看错表了.在同一窗口下,先执行,ALTER TABLE YSW412000 MODIFY SSSETSUNAME  NVARCHAR2(80) ,然后再DESC YSW412000 看表结构.
      

  2.   

    可以修改的,如果用plsql的话你查看下表,看列是不是已经变成NVARCHAR2(80) ;
    这个语句本身没问题。主键也没的关系;
    但又一条如果你之前的数值比80大想改小的话。是不可以的。只可以改大!
      

  3.   

    问题就实在这,原来 SSSETSUNAME   NVARCHAR2(160) 我重新建表的时候 是SSSETSUNAME   NVARCHAR2(80)但是 我发现建完之后还是 NVARCHAR2(160)
    于是我就 用ALTER TABLE YSW412000 MODIFY SSSETSUNAME  NVARCHAR2(80) 可是还是该不了。
      

  4.   


    好像是改了,可是pl/sql没有显示变化。
    到底是该了显示没有变化,还是没有改变阿??
    pl/sql刷新没有变化,还是原来的样子!!
      

  5.   

    重建表的sql是怎样的???不可能重建的时候为NVARCHAR2(80)查看的时候是160啊
      

  6.   

    是你没有commit吧  没有提交 长度是不变的 提交了才可以看见的