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