【发布时间】:2011-07-18 22:25:53
【问题描述】:
使用数据库时,通常必须使用事务。比如说我想从账户 A 向账户 B 转账一定数量的钱。这涉及到两个查询:
- 减少账户A的钱
- 在帐户 B 中增加它。
理论上我可以单独进行查询,但会发生错误。所以,可以肯定的是,我可以将这两个查询打包到一个事务中,并确保两个操作都定期结束,或者根本没有任何变化。没有钱会消失或被创造出来。
问题在于,在我看来,这只会将责任从我转移到数据库供应商身上。现在由数据库来进行这两项操作,并确保两者都进行或没有任何改变。并且数据库开发人员面临着发生错误的同样问题。
数据库供应商使用哪些技术来确保交易安全?
【问题讨论】:
标签: database database-design transactions