我需要更改表wrong_ban
中的列rejected_pih
。此列的当前数据类型为number(9)
,现在我需要将其修改为number
。这是我使用的代码:
alter table
rejected_pih
modify
(
WRONG_BAN number
);
问题是列类型没有更改,但没有任何错误消息,即使日志表示此表已成功更改:table REJECTED_PIH altered.
。但是如果我将表重命名为另一个名称(例如Rejected_PIH_2),则可以更改该列。请帮助,谢谢!
答案 0 :(得分:0)
这是一个简单的脚本,用于演示您的语句是否有效:
create table rejected_pih (WRONG_BAN number(9));
select data_type, data_precision from user_tab_columns where table_name = 'REJECTED_PIH';
DATA_TYPE DATA_PRECISION
------------------------------------------------ --------------
NUMBER 9
alter table rejected_pih modify (WRONG_BAN number);
select data_type, data_precision from user_tab_columns where table_name = 'REJECTED_PIH';
DATA_TYPE DATA_PRECISION
------------------------------------------------ --------------
NUMBER
如果你检查IDE中的定义,那么在此之前刷新元数据(可能成为问题)。