gpt4 book ai didi

sql - NOLOCK IN 临时表

转载 作者:行者123 更新时间:2023-12-04 17:37:52 24 4
gpt4 key购买 nike

我在我的程序中声明了一个表,您可以在下面看到:

Declare @resultTable Table
(
EmpId int,
EmpStatusId int,
CreatedDateTime datetime
)

我执行删除功能:
Delete From ActualTable
Where Id = (Select EmpId from @resultTable with (nolock) where EmpStatusId = @tempId)

我试图避免锁定 select 语句以避免死锁,即使我读取了脏数据。但是,不允许使用“with (nolock)”。错误说:

Incorrect syntax near the keyword 'with'. If this statement is a common table expression or an xmlnamespaces clause, the previous statement must be terminated with a semicolon.



有没有办法在临时表中应用 NOLOCK?

最佳答案

我想问你是否问对了问题:

您拥有表变量(注意:它不是临时表,而是表变量),因此对它发出 nolock 毫无意义。您似乎希望针对目标表 ActualTable 发出 nolock,但删除必须持有锁。时期。

处理大型删除操作的常用技术是分批行范围发出删除操作。

关于sql - NOLOCK IN 临时表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12633246/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com