Oracle Error ORA-06546: DDL statement is executed in an illegal context

Oracle Error Message

ORA-06546: DDL statement is executed in an illegal context

Reason for the Error

DDL statement is executed dynamically in illegal PL/SQL context.

– Dynamic OPEN cursor for a DDL in PL/SQL

– Bind variable’s used in USING clause to EXECUTE IMMEDIATE a DDL

– Define variable’s used in INTO clause to EXECUTE IMMEDIATE a DDL

Solution

Use EXECUTE IMMEDIATE without USING and INTO clauses to execute the DDL statement.