BEGIN;
UPDATE saving SET balance = balance - 100.00 WHERE name = 'Alice';
UPDATE checking SET balance = balance + 100.00 WHERE name = 'Alice';
COMMIT
在此事務中,我的客戶在提交之前死亡。我期望DB的狀態如何?如果客戶死亡,我們應該預期什麼樣的交易行爲?
讓我用從 http://java.sun.com/developer/onlineTraining/Programming/JDCBook/bmp4.html
在頁面的最後顯示的例子一個具體的例子有不是「提交」或「回滾」明確的邏輯。但如果客戶程序在操作後立即死亡會發生什麼:
「AuctionItem ai = home.create(seller,description,auctiondays,startprice,summary);」
客戶端沒有機會捕捉異常回滾,也沒有機會做提交。
如果答案幫助你,你應該接受它們。這是成本(非常昂貴...) 要在該網站上發佈問題。 –
2011-04-21 18:38:53