![](/img/trans.png)
[英]How to check which stored procedure/function inserts/deletes/updates data to particular table with time stamp in SQL server
[英]Inserts and Updates in SQL Server for a stored procedure
我在SQL Server中有一個這樣的表:
varID(PK) dataID(PK) is_used
A 1 0
B 1 0
然后,如果varID/dataID
組合存在,則加載數據以將varID/dataID
更新為1,否則將其添加。
因此,我必須插入/更新這些varID/dataID
組合。
varID(PK) dataID(PK)
B 1
C 1
因此,更新后的表如下所示:
varID(PK) dataID(PK) is_used
A 1 0
B 1 1
C 1 1
最簡單的方法是什么? 我將在存儲過程中進行操作。
過程嘗試更新給定密鑰的is_used
。 如果不成功,則插入新行。 注意,我將0作為is_used的默認值-我認為is_used = 1對於(C,1)是無意的。
create proc AddVarDataCombo (@varID varchar(100), @dataID int)
as
set nocount on
update ATable
set is_used = 1
where varID = @varID
and dataID = @dataID
if @@rowcount = 0
begin
insert into ATable
values (@varID, @dataID, 0)
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.