Oracle中有一个表T,原有一个字段C1,类型是RAW,长度是10。有一个C2字段,类型是Number
现在想把这个C1字段长度扩展到12字节。
对于增加的2字节填写按字段C2来定:
如果该记录的C2字段是1或2,则扩展的2字节都填写0x00
如果该记录的C2字段是3或4,则扩展的2字节都填写0xFF
解决方法:
1、重命名原表:
rename T to T_BK
2、建立新表
create table T
{
...
}
3、将原表中C2字段为1或者2的字段查出,扩展取值后放入新表
insert into t(C1,C2) select RAWTOHEX(subdn)||'0000' , C2 from T_BK where T_BK.C2=1 or T_BK.C2=2
4、将原表中C2字段为3或者4的字段查出,扩展取值后放入新表
insert into t(C1,C2) select RAWTOHEX(subdn)||'FFFF' , C2 from T_BK where T_BK.C2=3 or T_BK.C2=4