2013-02-27 234 views
2

我創建了一個DataBase.Batchable類中,我將命名爲Event__c最大大小

public class BatchCreateGCalendars implements Database.Batchable<SObject>, Database.Stateful, Database.AllowsCallouts { 
private List<Event__c> event_id; 
} 

我創建一個自定義對象,例如,1000條記錄類型的事件和然後使用聲明

insert event_id; 

這是好的,還是插入每個元素一個接一個更合適?在我的自定義對象中,我只創建了一個類型爲text(255)的自定義字段,列表的最大大小是多少?

回答

5

列表大小沒有定義的限制。我認爲你最終會達到的限制是堆大小,對於一個批處理作業,目前是12 MB。但是,您需要注意您可以通過DML處理的記錄數量,該數量目前爲10,000。

3

這裏有兩個問題。

1)是的,如果可以的話,一定要用對象列表來做DML語句。這將會更快執行,並且會幫助您避免州長限制。 (如果你沒有,你應該真的檢查them

2)編輯:幾年前曾經是1K,現在它只是一個像Jeremy寫的堆大小。你仍然有1K的收集傳遞給Visualforce,雖然(10K,如果它是一個readonly =「true」的頁面),並在所有查詢返回最大50K行

+2

#2 - nope,取消。幾年前曾經是1K,現在它只是Jeremy寫的堆大小。儘管傳遞給visualforce的集合仍有1K(如果它是隻讀=「true」的頁面,則爲10K),並且在所有查詢中返回最大50K行。 – eyescream 2013-02-27 08:29:28

+0

我站在糾正:) ty – 2013-02-27 08:32:34