1
我正在設置實體的類別和子類別,因此子類別取決於類別。在設置類別時,我需要確保完成事務成功或完成事務失敗。如果我一起使用2個查詢,它仍然會一個接一個執行,因此這可能是一個插入成功而另一個插入不成功。在PHP或mysqli中維護原子性有什麼好方法嗎?插入多個表時的原子性問題
我正在設置實體的類別和子類別,因此子類別取決於類別。在設置類別時,我需要確保完成事務成功或完成事務失敗。如果我一起使用2個查詢,它仍然會一個接一個執行,因此這可能是一個插入成功而另一個插入不成功。在PHP或mysqli中維護原子性有什麼好方法嗎?插入多個表時的原子性問題
不,因爲這些數據庫是完全不相關的,並且沒有跨數據庫事務這樣的事情。至少,不是我所知道的。 :)
但是,你是一個一點點如果您使用插入事務處理更安全一點。在兩個數據庫上啓動一個事務,在兩個數據庫上執行所有修改,然後僅執行兩個事務。插入/更新語句已經運行了(如果存在像約束錯誤那樣的問題,可能會失敗),所以在你要提交的地方,沒有太多可能出錯的地方。
確保您的表格處於支持事務的存儲類型中。
[編輯]
您可以使用
START TRANSACTION;
-- Your queries go here
COMMIT
在事務中執行語句。
欲瞭解更多信息,請閱讀:http://dev.mysql.com/doc/refman/5.0/en/commit.html
我在多個數據庫不插入,在多個表中插入我。 – Sourabh
我誤解了,因爲你的標題說'多個數據庫'。在這種情況下:是的,你可以。這確實被稱爲'交易'。看我的編輯。 – GolezTrol
噢,對不起,我的錯誤。 – Sourabh