orcale 修改字段属性

有些时候,因为没能预料到一些情况的变化,需要修改字段的类型。如果是varchar型,直接增加长度是可以的,但是如果需要修改成其他类型就不能这么做了。

思路:1、增加一个临时列,把需要修改的那个字段的数据,存放在这个临时列中

     2、把要修改的字段置空

     3、修改字段类型,把临时列中的数据放回该字段中

     4、删除临时列

     5:OK

具体代码如下:

alter table tb add lsl number;--增加临时列

update tb set lsl=dd ,dd=null;--把数据放到临时列,置空数据列

commit;

alter table tb modify dd NVARCHAR2(200);--修改字段类型

update tb set dd='00'||lsl where lsl is not null;--放回数据

commit;

alter table tb drop column lsl;--删除临时列



--参数说明tb 表明,dd要修改的列。lsl临时列

--描述:dd为number型,现在要把它修改成NVARCHAR2(200)

  

你可能感兴趣的:(orcale)