2010年1月16日 星期六

OLE DB目的地的插入認可大小上限2147483647

若在SQL 2005的SSIS封裝中使用[OLE DB 目的地],在偵錯時有時封裝會一直執行不完,明明資料已經載完了,可是又沒當,可以手動停止偵錯,很怪

找找[OLE DB 目的地]的設定,發現有個[插入認可大小上限](Maximum insert commit size),預設值為0這個值是用在當單一資料列發生錯誤時,有多少筆會被Redirect(or Rollback)的意思,我嘗試設為別的值好像就比較不會發生封裝停止回應的事

那到底要設多少才不會停止回應呢?上網搜尋了一下,在SQL Server 2008 的線上叢書(http://msdn.microsoft.com/en-us/library/ms188439.aspx)裡有提到,若值為0可能會造成封裝停止回應,若要避免封裝停止回應,請把值設定為 2147483647,這也適用SQL 2005喔,我設了好像就好多了!參考一下!

比對SQL 2005與2008的線上叢書,這值在2005預設為0,在2008預設已為2147483647,那就表示這算bug囉,所以在2008修正了

0 意見:

張貼留言