SQL开发人员中是否有表对象的锁定机制?

问题描述 投票:0回答:1

在我的多用户数据库中,多个并发事务中的语句可以更新表中的相同数据。我必须限制数据的访问,直到一个事务完成

我听说过数据并发和一致性,但无法理解

sql
1个回答
0
投票

有几种选择。

1)用TABLOCKX锁定整个桌子:

如果您在交易中并且在桌面上获得了独占锁定,则EG:

SELECT 1 FROM TABLE WITH (TABLOCKX)

没有其他进程能够获取表上的任何锁,这意味着在事务提交之前,所有尝试与表通信的查询都将被阻止。

2)使用手动应用程序锁:

sp_getapplock (Transact-SQL) | Microsoft Docs[^]

sp_releaseapplock (Transact-SQL) | Microsoft Docs[^]

© www.soinside.com 2019 - 2024. All rights reserved.