我在oracle和 我尝试将varchar(50)更改为250
CREATE OR REPLACE TYPE CEQ_OWNER.TYPE_REC_PARAE2
AS OBJECT
(
...
BONETAT_DESC VARCHAR2(250),
...
)
/
我得到ORA-02303:不能删除或替换类型或表依赖的类型
由于
答案 0 :(得分:19)
还有其他类型或表依赖于您要更改的类型。如果它是依赖类型,则可以使用FORCE选项更改类型。
如果是直接或间接使用该类型的表,则需要创建新类型和新表,迁移所有数据,最后删除并重命名表和类型。
有关更多信息,请参阅此Oracle documentation。
答案 1 :(得分:13)
我到处寻找语法,但很难找到文档。从Codo链接的页面...注意FORCE
位于对象名称和as object
之间
create or replace type ceq_owner.type_rec_parae2 FORCE as object
(
...
BONETAT_DESC VARCHAR2(250),
...
)
/
答案 2 :(得分:6)
尝试:
drop type your_type force;
答案 3 :(得分:-2)