从C#winform锁定和解锁sql数据库中的行

本文关键字:数据库 sql 解锁 C#winform 锁定 | 更新日期: 2023-09-27 18:28:53

我有一个项目,我使用select语句从sql表中选择一组记录,我需要锁定所选记录,然后更新一些记录,并将其他记录移动到另一个表。现在我有一个这样的选择。

Select item 
from tableA 
where batchno = 123;

我相信我会像这样写来锁定它们

Select item 
from tableA with (rowlock, readpast)
where batchno = 123;

这基本上是选择,然后我对数据网格视图中的每个记录进行更新,并将其放在另一个表中,该表包含添加到记录中的所有内容以及原始字段。当我将记录插入另一个表时,我会删除原始记录,那些未更新的记录,我会更改那些未更新且需要解除锁定的记录的批号。

我使用readpass是为了让其他用户不会出现已经选择的记录。我相信这是对的。

如果这是正确的,我需要知道如何发布记录。我是C#的新手,所以请说清楚并耐心等待。

从C#winform锁定和解锁sql数据库中的行

我相信一旦事务提交或回滚,锁就会被释放