MS SQL Server 2008 R2
假设我们有以下表格:
**MoneyTransactions**
- Amount (int)
- CustomerId (int)
...
Customers
- Id (int)
- balance (int)
...
如果同时执行100次,以下操作线程是否安全?
INSERT INTO Transactions(Amount, CustomerId, ...) Values(@myAmount, @customerId, ...)
UPDATE Customers SET Balance = Balance + @myAmount WHERE Id = @customerId
我的更新是以原子方式执行还是同步执行干扰并使余额损坏与交易金额的总和相比较?
如果可能,我想避免使用BEGIN TRAN/COMMIT TRAN
。
答案 0 :(得分:-1)