我有一个 ASP.Net 网页,用户可以在其中选择一行进行编辑。我想在该行上使用行锁,一旦用户完成编辑并更新,另一个用户就可以编辑该行,即如何使用行锁以便只有一个用户可以编辑一行?
谢谢
最佳答案
您无法使用数据库引擎锁来锁定这样的行。
大多数其他策略将依赖于保持连接打开(例如 sp_getapplock),这在网络应用程序中是无意义的。
即使您在该行上设置了标志,如果用户只是在编辑过程中关闭浏览器,会发生什么?
我建议使用时间戳/行版本列来检测其他 session 中行的更改。
关于sql-server - select语句上的sql行锁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2674018/