如何防止更新错误的数据?

时间:2018-08-28 06:30:35

标签: sql sql-server

我有一种情况,例如我想在表中插入一条记录,然后我    通过获取最后插入的行ID更新相同的记录,所以现在我的    问题是,如果另一个用户在第一个用户之前插入新记录    记录被更新,所以根据我的情况,我得到了最后一个    插入的行ID,在这种情况下,更新应用于最后一行    第一个解决方案,请提供任何解决方案。

1 个答案:

答案 0 :(得分:2)

这是用于 SQL Server 如果表中有一个Identity列,则在插入后,使用@@IDENTITY变量或SCOPE_IDENTITY()函数来获取所插入行的Identity值,然后在更新时使用Where子句中的Identity Filed。 / p>

类似这样的东西

INSERT INTO MyTable(FullName)
VALUES('My Name')

SELECT @IdVal = SCOPE_IDENTITY()

UPDATE MyTable SET Phone='1234' WHERE IdCol = @IdVal