我在 Oracle 11g 中有一个表(包含数据),我需要使用 Oracle SQLPlus 来执行以下操作:
TEST1
目标:将表中的列类型UDA1
从更改number
为varchar2
。
建议的方法:
- 备份表
- 将列设置为空
- 更改数据类型
- 恢复价值
以下没有奏效。
create table temp_uda1 AS (select * from UDA1);
update UDA1 set TEST1 = null;
commit;
alter table UDA1 modify TEST1 varchar2(3);
insert into UDA1(TEST1)
select cast(TEST1 as varchar2(3)) from temp_uda1;
commit;
与索引有关(以保持顺序),对吗?