ORA-02303: невозможно удалить или заменить тип с помощью типов или таблиц

Im newbee в oracle и Я пытаюсь изменить varchar (50) до 250

   CREATE OR REPLACE TYPE CEQ_OWNER.TYPE_REC_PARAE2

   AS OBJECT    
   (
     ...
     BONETAT_DESC  VARCHAR2(250),
     ... 
   )
   /    

Я получаю ORA-02303: не могу отказаться или заменить тип с помощью типов или табличных иждивенцев

Спасибо

Ответ 1

Существуют другие типы или таблицы, которые зависят от типа, который вы хотите изменить. Если это зависимый тип, то вы можете использовать параметр FORCE для изменения типа.

Если это таблица, которая прямо или косвенно использует этот тип, тогда вам нужно будет создать новый тип и новую таблицу, перенести все данные и, наконец, отбросить и переименовать таблицы и типы.

См. эту документацию Oracle для получения дополнительной информации.

Ответ 2

Я тоже везде искал синтаксис, но мне было трудно найти документацию. На странице, с которой связано Codo... обратите внимание, что FORCE находится между именем объекта и as object

create or replace type ceq_owner.type_rec_parae2 FORCE as object    
(
  ...
  BONETAT_DESC  VARCHAR2(250),
  ... 
)
/ 

Ответ 3

Try:

drop type your_type force;

Ответ 4

Есть некоторые зависимости для объекта, который вы пытаетесь изменить или удалить.

Если вы хотите пропустить это первое падение зависимого объекта и попробуйте DROP или MODIFY

Как в приведенном ниже скриншоте

С уважением, Arul