0

我对上面的问题有疑问。我们在整个应用程序中使用 with nolock。在某些情况下,我需要更快地进行选择,无论效果如何。

所以select with(TABLOCKX)会更快还是with(nolock)

4

2 回答 2

1

要回答您的问题,with (nolock)表格提示会更快。

NOLOCK 通常(取决于您的数据库引擎)意味着给我您的数据,我不在乎它处于什么状态,并且在您读取它时不要打扰它。它同时速度更快,资源消耗更少,而且非常非常危险。

正如这里解释得很好NoLock

于 2016-11-18T14:24:06.047 回答
0

Nolock 意味着您可以读取一些锁定的行(使用共享锁)。但是您仍然需要等待其他锁。

Tablockx 意味着你用独占锁来阻塞整个表以供其他查询使用——其他会话不能锁定,你阻塞整个表后就不能被阻塞。Tablockx 主要用于快速插入。

避免在任何地方使用 nolock。尽量避免长时间使用独占锁,或者尽量减少阻塞,这样就不需要 nolocks。

于 2016-11-18T14:20:13.643 回答