表(User):
CREATE TABLE [dbo].[User](
[UID] [varchar](6) NOT NULL,
[UName] [varchar](10) NULL,
[State] [int] NULL,
 CONSTRAINT [PK_User] PRIMARY KEY CLUSTERED ) ON [PRIMARY]
当state=1时,不能删除在web程序(C#),两个用户同时打开一个“UID=9,UName='张三',State=0”的记录并在页面中显示,用户1通过'审核'将State更改成1,之后,用户2执行删除操作,那么删除之前必须要做两件事,否则删除将出问题:1)记录是否存在2)state是否为1,而且这两个判断还必须在事务中。我以前是用Delphi的,在使用TQuery时,执行删除时,系统发送的是delete from User where UID=:@old_uid and UName=:@old_uname and State=:@old_state,由于old_state=0,所以删除时影响函数为0,那么TQuery自动抛出异常"后台记录不存在,请检查",这样可以保证数据不会出现问题在C#中如何实现呢?需要自己手工写吗?如何能很方便的获取old_state值呢?