我很困惑为什么针对自定义对象的SOQL查询只返回前150行应该返回到调控器限制(50,000)。有没有人知道为什么我的查询受到限制?
这是我的控制器方法:
@RemoteAction
public static List<Metro__c> getAllMetros(){
String query = 'SELECT Id, Name, state__c FROM Metro__c ORDER BY Name';
List<Metro__c> r = Database.query(query);
System.debug('r='+r.size());
return r;
}
当我看到调试时,我看到:
10:48:27:237 USER_DEBUG [54]|DEBUG|r=150
Metro__c对象中有数千条记录。任何有关这方面的见解将不胜感激。
答案 0 :(得分:0)
这是我的问题。问题是我如何将数据导入Metro对象。我按照请求限制达到了150个SoQL查询,但我没有意识到对象中没有所有记录。更改记录的插入方式后,一切正常。
答案 1 :(得分:0)
这听起来你的批量大小为150.你可以通过
设置connection.setQueryOptions(250);
执行query()函数时,您将获得250条记录,您需要使用queryMore()继续捕获下一批。
请查看Salesforce文档: https://www.salesforce.com/developer/docs/api/Content/sforce_api_calls_query.htm
和