我使用SSRS构建了一个工作清单,多个用户将同时使用该报告。我在存储过程中有多个UPDATE / INSERT语句,它们使用相应的参数来执行。这是一个快速的查询,但我担心的是,如果2个用户同时在不同的记录上尝试相同的操作会怎样。我已经阅读了很多关于锁定和表格提示的内容,并且没有太多运气找到一个可靠的答案。我不想锁定用户,但是或多或少地相应地排队交易。
IF @ID = 0
BEGIN
UPDATE TABLEA SET MYVALUE = 1 , USER = @USERID, RECDATE = GETDATE();
END
IF @ID = 1
BEGIN
INSERT INTO TABLE B
SELECT @ACCOUNTID , @SOMEVALUE , @USERID, GETDATE();
END
所以这段代码是关于正在发生的事情的简化版本。制作它的最佳过程是什么,如果proc正在执行,而第二个用户将其关闭,它会将执行排队直到第一个完成?这是在SSMS 2012中。谢谢。