2010-11-09 79 views
1

我們計劃不要在MSIS中使用MSDTC進行事務管理,而是希望使用使用Begin事務和提交事務的本地trsnactions。從設計的角度來看,除了一個問題外,它似乎還行。當SSIS包在任何任務中失敗時,我們都會有一個錯誤事件處理程序,它將記錄插入到錯誤表中。所以現在發生的情況是,當SSIS回滾事務時,它也會回滾錯誤處理例程。但是我不確定我能夠如何精細地控制它,因爲嵌套事務不會像我在開始執行包時開始事務那樣工作。SSIS本地嵌套事務用於錯誤處理

有什麼想法?

回答

0

我切換到MSDTC來處理SSIS中的這些事務和錯誤處理。這種新方法非常乾淨,只需將SSIS中的相關流程標記爲txn需要與否,即可完成。我將錯誤處理例程標記爲'txn not supported',因爲我不希望它在出現錯誤時回滾。因爲我們將解決方案捆綁到單個客戶端工作站,所以現在一切都看起來很好,除了我們的案例中的基礎架構開銷。

非常感謝

0

這是一個article on MSDN,它解釋瞭如何使用支持錯誤處理的TRANSACTION COMMITT的TRY-CATCH塊。

關於您對嵌套事務的評論,它們實際上並不存在於SQL Server中。請看這blog post from Paul Randal.

+0

是的,他們不支持,我發佈前請閱讀MSDN文章(http://msdn.microsoft.com/en-us/library/ms189336.aspx),我想知道如何其他人用本地事務處理SSIS中的錯誤例程。我們有要求將SSIS包中的錯誤插入到數據庫表中。非常感謝 – user399532 2010-11-09 23:21:08