2017-04-10 40 views
1

我有多個函數來保存(插入)到數據庫。防止以前插入失敗時插入

我想要的是,如果有1個函數將錯誤保存(插入)到數據庫中,則不會提交任何以前的保存(插入)。

例如:

//button click event 
Try 
    insert_a() 
    insert_b() 
    insert_c() 
    insert_d() 
Catch 
    MsgBox("Failed to insertaaaaa !") 
End Try 
// 

比方說,我得到的錯誤是insert_c,但insert_ainsert_b已經運行並保存(插入)到數據庫中。

如何不將save提交到數據庫ca也停止運行insert_d函數?

+0

插入大量記錄或每個插入函數只插入一條記錄? –

+3

爲什麼不使用交易? –

+0

@reds每個插入功能1個記錄,其中表數據庫是彼此不同 – chopperfield

回答

1

您需要在捕獲錯誤時啓動事務並將其回滾。

+0

如何做到這一點,舉個例子? – chopperfield

+0

我無法獲取線程鏈接,但搜索「try catch事務回滾」 – anveshtummala