Можно ли использовать DDL в PL SQL?

Ответить:

PL / SQL может только использовать SELECT, DML (INSERT, UPDATE, DELETE) и TC (COMMIT , ROLLBACK, SAVEPOINT) операторы DDL (CREATE, ALTER, DROP) и DCL (GRANT, REVOKE) не могут использоваться напрямую. Однако любой DDL / DCL может выполняться из PL / SQL , если он встроен в оператор EXECUTE IMMEDIATE.

Впоследствии можно также спросить, можем ли мы использовать DDL в процедуре? Операторы DDL не разрешены в процедурах (PLSQL BLOCK ) Объекты PL / SQL предварительно скомпилированы. С другой стороны, операторы DDL (язык определения данных), такие как команды CREATE, DROP, ALTER и операторы DCL (язык управления данными), такие как GRANT, REVOKE , могут изменять зависимости во время выполнение программы.
Кроме того, что такое DDL-команда? Язык определения или описания данных ( DDL ) — это синтаксис, аналогичный языку компьютерного программирования для определения структур данных, особенно схем баз данных. Операторы DDL создают и изменяют объекты базы данных, такие как таблицы, индексы и пользователи. Распространенными операторами DDL являются CREATE, ALTER и DROP.
Люди также спрашивают, можем ли мы использовать DDL в Oracle?
Запрещено DDL : функция , вызываемая изнутри инструкции SQL, ограничена для DDL , поскольку DDL выдает неявную фиксацию. Вы не можете выполнять какие-либо инструкции DDL из функции PL / SQL . Ограничения против ограничений: вы не можете использовать функцию в проверочном ограничении оператора create table DDL .
Можно ли создать таблицу в блоке PL SQL?
Команды DDL не разрешены в качестве конструкций PL / SQL в PL / блоках SQL . Используя DBMS_SQL или EXECUTE IMMEDIATE, мы можем выполнить создать таблицу , удалить, изменить, проанализировать, усечь и другие DDL. PL / SQL ПРОЦЕДУРА успешно завершена.