前几天一位同事告诉我,如果您不在 NOLOCK 中包含查询,则在 cfquery 中使用 cftransaction 是毫无意义的。他声称 SQL Server 只会识别事务中的 NOLOCK,因此在 cftransaction 中没有查询会使 NOLOCK 变得多余。

有人可以确认这是真的还是假的,因为在我工作过的所有 CF 商店中,NOLOCK 被大量使用,并且它很少出现在 cftransaction 中。我是否应该认为所有这些商店中的所有查询实际上都没有尊重 NOLOCK

最佳答案

你的同事不正确, NOLOCK 在上下文 cftransaction 之外不是多余的。

如果您在 SQL Server 中使用默认设置,则您执行的每个查询都包含在一个事务中,无论您是否明确键入它。这称为“autocommit mode”。

关于sql-server - NOLOCK 和 Coldfusion,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7395903/

10-09 20:01