-1
SELECT 'ALTER TABLE ' || uc.table_name || ' DROP CONSTRAINT ' || uc.constraint_name FROM user_constraints uc WHERE constraint_type = 'R';
возвращает то есть некоторые заявления, которые я могу выполнять вручную, как:Oracle: Выполнить запрос из выбранной строки
ALTER TABLE APPLICATIONUSERROLE DROP CONSTRAINT APP_APPUSERROLE_FK1
ALTER TABLE APPLICATIONUSERROLE DROP CONSTRAINT USER_APPUSERROLE_FK1
ALTER TABLE APPLICATIONUSERROLE DROP CONSTRAINT ROLE_APPUSERROLE_FK1
Что я должен сделать, чтобы выполнить их автоматически?
Например, я попробовал:
EXECUTE IMMEDIATE (SELECT 'ALTER TABLE ' || uc.table_name || ' DROP CONSTRAINT ' || uc.constraint_name FROM user_constraints uc WHERE constraint_type = 'R');
но то не работает вообще бросали какие-то ошибки.
Заранее спасибо.
спасибо, но выбрасывает: PLS-00103: Встретил символ «SQL» – Powerslave
Я отредактировал сообщение. попробуйте использовать псевдоним sql_text вместо sql – SkyWalker
спасибо, теперь бросает: PLS-00302: должен быть объявлен компонент «sql_text»;) – Powerslave