前提如下:
db_a,db_b為兩個資料庫
都有乙個person表
該錶兩個字段 personid(主鍵)和personname
下面的分布式事務 實現的是
同時向這兩個庫的兩個表新增資料
******************************=
set xact_abort on
-- 開始分布式事務
begin distributed transaction
-- 操作 db_a資料庫的person表
insert into [db_a].[dbo].[person]([personid], [personname])
values('2', '張三')
-- 操作 db_b資料庫的person表
insert into [db_b].[dbo].[person]([personid], [personname])
values('1', '張三')
--提交事務
commit transaction
分布式事務處理
場景 a資料庫有乙個人叫小明,b資料庫有乙個人叫小花,現在小明要給小花轉賬100,那麼就有兩個操作,小明賬戶 100,小 花賬戶 100,由於是跨資料庫,事務在此時沒用,那該如何保證兩人賬戶資料的準確。方案一 兩次提交,設計理念 在同乙個資料庫中,我們可以使用事務來保證資料的原子性。現在我們有兩個資...
java 分布式事務處理
分布式事務處理 當資料分布在多個資料庫伺服器上時,就需要各種保護措施來保證資料正確地寫到所有資料庫中。例如,考慮乙個在三個分離的遠端資料庫上修改的 客戶帳戶平衡表,如果在事務寫階段,任何乙個資料庫連線失敗,資料庫之間就失去同步。怎樣檢測並更正這種情形呢?事務處理 tp 監示乙個叫做兩階段提交 的過程...
XA分布式事務處理
在談到 xa規範之前,必須首先了解分布式事務處理 distributed transaction processing dtp 的概念。transaction 即事務,又稱之為交易,指乙個程式或程式段,在乙個或多個資源如 資料庫 或檔案上為完成某些功能的執行過程的集合。分布式事務處理是指乙個事務可能...