System.LimitException:查询行太多:触发器中出现50001错误

时间:2016-08-30 05:27:14

标签: triggers salesforce apex soql

我在Apex触发器中有soql,因为它正在获取测试对象的所有记录。 SOQl正在获取超过50000条记录,因此当我更新记录时,我面临此调控器限制错误。 请让我知道如何解决这个错误。

List<test__c> ocrInformation = new List<test__c>();
Map<String,String> Opporgcode=new Map<String,String>();
ocrInformation= [select id,Team__c,Org__c from test__c];//facing an error here
for(test__c oct: ocrInformation){
    Opporgcode.put(oct.Org__c,oct.Team__c);
}

1 个答案:

答案 0 :(得分:2)

这是标准的Salesforce限制

  

SOQL查询检索的记录总数= 50,000

您真的需要选择所有test__c记录吗?您可以通过wherelimit条件帮助减少检索到的数据量。如果没有,您可以尝试使用Batch Apex。它允许每批执行50k限制计数。