Too many DML statements: 1 out of 0 Error in Salesforce

Too many DML statements: 1 out of 0 Error in Salesforce

Check the below options to fix the “System.LimitException: Too many DML statements: 1” exception in Salesforce.

1.Visualforce Page:

In <apex:page> tag, if attribute “readonly” is true and if we try to execute DML statements(Insert, Update, Delete), then it shows Too many DML statements: 1 out of 0 Error in Salesforce.

So, in order to rectify this error, set readOnly = “false” or remove this attribute in <apex:page> tag.

Sample code:

<apex:page controller="Sample" sidebar="false" readOnly="false">

When you set readOnly attribute of page to true then it does not allow any DML statements.

2. Aura Component:

Do not use @AuraEnabled(cacheable=true). Use @AuraEnabled. Remove (cacheable=true).

3. Lightning Web Component:

a. Do not use @AuraEnabled(cacheable=true). Use @AuraEnabled. Remove (cacheable=true).

b. Use async await while calling method that does DML Operations. 

Sample code for Lightning Web Component:

Leave a Reply