Today, the application side told me that a DML operation caused the database to report an error, said ldquo; ORA-234567, do not allow the development to execute DDL operations, please contact DBArdquo; for security, DBA in
Today, the application side told me that a DML operation caused the database to report an error, said ldquo; ORA-234567, do not allow the development to execute DDL operations, please contact DBArdquo; for security, DBA in
Today, the application side told me that a DML operation caused the database to report an error, said "ORA-234567, do not allow development to execute DDL operations, please contact DBA"
To ensure security, DBAs create DDL triggers on each database and do not allow developers to execute DDL.
But the developers gave me feedback that they only performed normal INSERT operations without any DDL operations.
The first reason is that some DDL operations may occur recursively in the database due to DML operations.
Fortunately, this error can be reproduced after 10046 tracking. It is found that the tablespace in the database is insufficient during the INSERT operation, which causes Oracle to recursively clear the recycle bin. This operation is DDL. As a result, there is a problem at the beginning.
Of course, this problem does not occur in a well-monitored production environment. When the tablespace is insufficient, the monitoring system should first trigger an alarm.
However, the test shows that the space of the deleted table is calculated as the space remaining in the tablespace.
If the recycle bin is opened, even if the system seems to have dozens of GB remaining, the space may be the space of the table to be deleted. You need to clear the recycle bin to use it.
If the ddl trigger exists in the system, it may cause that there is a lot of available space in the system, but INSERT reports the error "ORA-234567, do not allow the development to execute DDL operations, please contact DBA"
Disabling the recycle bin is a problem.
Oracle DML Process
PL/SQL ORA-14551: cannot perform DML operations in queries solved
Common MySQL DDL, DML, and DCL languages (example)
Execute batch DML exercises for Oracle basic transactions and ForAll
Oracle DML Statement (insert, update, delete) rollback Estimation