ORA-14551: cannot perform a DML operation inside a query

I got ” ORA-14551: cannot perform a DML operation inside a query ”  error in Oracle database.

 

ORA-14551: cannot perform a DML operation inside a query

 

Details of error are as follows.

ORA-14551 cannot perform a DML operation inside a query

Cause: DML operation like insert, update, delete or select-for-update cannot be performed 
inside a query or under a PDML slave.

Action: Ensure that the offending DML operation is not performed or use an autonomous
 transaction to perform the DML operation within the query or PDML slave.

 

 

 

cannot perform a DML operation inside a query

This ORA-14551 error is related with the DML operation like insert, update, delete or select-for-update cannot be performed inside a query or under a PDML slave.

Ensure that the offending DML operation is not performed or use an autonomous transaction to perform the DML operation within the query or PDML slave.

 

You should use the PRAGMA AUTONOMOUS_TRANSACTION;

You should give commit explicitly inside the function;

 

OR if you got this error when you run function as follows.

SQL> select testfunction('test') from dual;

 

Then run it as follows.

SQL> var myvar NUMBER;
SQL> call testfunction('test') into :myvar;  

Call completed.

 

 

Do you want to learn Oracle Database for Beginners, then read the following articles.

Oracle Tutorial | Oracle Database Tutorials for Beginners ( Junior Oracle DBA )

 

About Mehmet Salih Deveci

I am Founder of SysDBASoft IT and IT Tutorial and Certified Expert about Oracle & SQL Server database, Goldengate, Exadata Machine, Oracle Database Appliance administrator with 10+years experience.I have OCA, OCP, OCE RAC Expert Certificates I have worked 100+ Banking, Insurance, Finance, Telco and etc. clients as a Consultant, Insource or Outsource.I have done 200+ Operations in this clients such as Exadata Installation & PoC & Migration & Upgrade, Oracle & SQL Server Database Upgrade, Oracle RAC Installation, SQL Server AlwaysOn Installation, Database Migration, Disaster Recovery, Backup Restore, Performance Tuning, Periodic Healthchecks.I have done 2000+ Table replication with Goldengate or SQL Server Replication tool for DWH Databases in many clients.If you need Oracle DBA, SQL Server DBA, APPS DBA,  Exadata, Goldengate, EBS Consultancy and Training you can send my email adress [email protected].-                                                                                                                                                                                                                                                 -Oracle DBA, SQL Server DBA, APPS DBA,  Exadata, Goldengate, EBS ve linux Danışmanlık ve Eğitim için  [email protected] a mail atabilirsiniz.

Leave a Reply

Your email address will not be published. Required fields are marked *