【发布时间】:2010-10-01 01:53:50
【问题描述】:
子提问SQL - when should you use “with (nolock)”
在当地的一家金融机构中,他们的程序员指责我表达了我的观点,即(他们的程序员痴迷于)(b)他们的 MS SQL Server 2005 数据库中的锁定问题对我来说没有多大意义。
如果财务操作从未更新、删除甚至不正确的操作(“交易”的一部分?)通过向数据库中插入(添加)新的更正记录来更正,那么可能出现的锁定、阻塞、死锁问题是什么? ?
这在英语中的术语是什么?在其他语言中,它被称为 storno、stornoed (?) 操作/记录。
因此,据我了解,“交易”实际上永远不会回滚,也永远不会有不正确/不存在的记录,只有未实现的记录。
更新:
我用谷歌搜索了 storno,但找不到任何用英文定义或在英文文本中使用的结果。
我找到了 storno 的定义(拉丁字母)只有意大利语。
但是会计是在意大利发明的,许多意大利会计术语在其他语言中使用,例如,在俄罗斯会计(银行)中。
我还以为这是国际公认的财务运营会计惯例,不是吗?
更新 2:
S.Lott 给了我The way that transactions are reversed in an ERP application is a big deal! 的链接,告诉我 storn 是逆转交易。
嗯,这是不正确的。 Storno 不仅是交易,它是纠正错误操作的任何操作(交易的一部分),尽管 2 个操作组合起来可能看起来是逆向交易(由 2 个操作组成 - 对目标和源帐户进行贷记和借记)。
那么,storno 是不是世界范围内普遍的财务会计实践?
无论如何,我想避免讨论会计细节/技术/术语,并将问题限制在从不删除或更新记录的上下文中。
在这种情况下,锁定、阻塞、死锁、性能可能会出现哪些问题?
【问题讨论】:
-
"其他语言?"你能具体点吗?
-
@S.Lott,发布您的答案。我赞成它,因为它对我有帮助。在主帖中查看我的更新
标签: sql-server database-design transactions database-deadlocks