DDi*_*ita 2 sql t-sql sql-server sql-server-2005
我需要编写一个程序,允许我选择x行数,同时更新这些行,以便调用应用程序知道这些记录被锁定和使用.我在表中有一个名为"locked"的列.下次调用该过程时,它将仅拉出未检查"已锁定"列的下一x个记录.我已经阅读了一些关于SQL Server的OUTPUT方法,但不确定这是我想要做的.
如您所建议,您可以有效地使用OUTPUT子句:
现场演示:https://data.stackexchange.com/stackoverflow/query/8058/so3319842
UPDATE #tbl
SET locked = 1
OUTPUT INSERTED.*
WHERE id IN (
SELECT TOP 1 id
FROM #tbl
WHERE locked = 0
ORDER BY id
)?
Run Code Online (Sandbox Code Playgroud)
另见本文:
http://www.sqlmag.com/article/tsql3/more-top-troubles-using-top-with-insert-update-and-delete.aspx
| 归档时间: |
|
| 查看次数: |
433 次 |
| 最近记录: |