问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

在sql触发器中如何获得被修改行的ID

发布网友 发布时间:2022-05-03 18:57

我来回答

5个回答

懂视网 时间:2022-05-03 23:18

代码如下:
create trigger TgName
on tb
for update
as
if update(recommend)
begin
update tb set commenddate=(getdate()) from tb inner join inserted on tb.vlistid=Inserted.vlistid
end

recommend表示被更新的字段.
关键在于Inserted表
触发器语句中使用了两种特殊的表:deleted 表和 inserted 表。
Deleted 表用于存储 DELETE 和 UPDATE 语句所影响的行的复本。在执行 DELETE 或 UPDATE 语句时,行从触发器表中删除,并传输到 deleted 表中。Deleted 表和触发器表通常没有相同的行。

Inserted 表用于存储 INSERT 和 UPDATE 语句所影响的行的副本。在一个插入或更新事务处理中,新建行被同时添加到 inserted 表和触发器表中。Inserted 表中的行是触发器表中新行的副本。

1.插入操作(Insert)
Inserted表有数据,Deleted表无数据

2.删除操作(Delete)
Inserted表无数据,Deleted表有数据

3.更新操作(Update)
Inserted表有数据(新数据),Deleted表有数据(旧数据)

生前何必久睡,死后自会长眠!

热心网友 时间:2022-05-03 20:26

sql update 触发器 获得被update的行的信息 create trigger TgName
on tb
for update
as
if update(recommend)
begin
update tb set commenddate=(getdate()) from tb inner join inserted on tb.vlistid=Inserted.vlistid
end
关键在于Inserted表
触发器语句中使用了两种特殊的表:deleted 表和 inserted 表。
Deleted 表用于存储 DELETE 和 UPDATE 语句所影响的行的复本。在执行 DELETE 或 UPDATE 语句时,行从触发器表中删除,并传输到 deleted 表中。Deleted 表和触发器表通常没有相同的行。Inserted 表用于存储 INSERT 和 UPDATE 语句所影响的行的副本。在一个插入或更新事务处理中,新建行被同时添加到 inserted 表和触发器表中。Inserted 表中的行是触发器表中新行的副本。1.插入操作(Insert)
Inserted表有数据,Deleted表无数据

2.删除操作(Delete)
Inserted表无数据,Deleted表有数据

3.更新操作(Update)
Inserted表有数据(新数据),Deleted表有数据(旧数据)

热心网友 时间:2022-05-03 21:44

用删除触发器
其中可以用deleted获取删除的记录

CREATE TRIGGER [dbo].[trg1]
ON [dbo].[t]
AFTER DELETE
AS
BEGIN
insert into tlog select [id] from deleted
END

热心网友 时间:2022-05-03 23:19

于insert,update select id from inserted于 delete,updateselect id from deleted

热心网友 时间:2022-05-04 01:10

new.id

new.数据列
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
如何在win10下安装docker? windows(win10)上的docker使用:安装(国内镜像)、操作 win10安装dockerWin10下Docker安装和使用 关于安装配置docker,找不到Hyper-V(win10 家庭版需要配置,专业版不需要... 怎么把微信上的聊天记录转到新手机 怎么把聊天记录转到另一个手机 快递被别人冒领,快递公司有没有责任 洋葱汤洋葱汤 一颗洋葱汤怎么做 一颗洋葱汤怎么做好吃 sql server 2008 游标不按顺序执行语句怎么办 sql server select某表的字段(字段存储着计算公式),这个字段内容可以作为select语句执行的一部分吗! SQL server语句 sql server 2008中是先执行order by 后执行select top 3*from ceshi?为什么和规定的执行顺序相反? 请教一下关于sql server的语句执行顺序是否能够自己设定? asp.net 分页代码 首页 上一页 1 2 3 4 5 >> …… 30 下一页 尾页 用存储过程分页后,前台上一页,跳转页怎么写 存储过程数据排序问题 sqlserver 自定义函数怎么接收关键字参数 asp.net 如何一次执行多条件Sql语句,如何解决? ASP.NET怎样使用SQL语句呢? ASP.NET执行sql语句 c# .net中 对于access数据库执行sql命令 .net 执行一个sql脚本 C#.NET 怎么对WINDOWS的CMD命令操作 如何在asp.net中执行sql脚本文件 .net 执行 sql 语句 c#读取xml 中的数据库连接字符串 sqlserver语句中,怎么样将字符串'ab00000008'减去2,得到'ab00000006' ibatis中sql.xml怎么分割字符串并循环 (转载)在sql触发器中如何获得被修改行的ID 刚才那个sql触发器的,怎么知道表里哪一行是被update了的? 在sql update 触发器中能不能定义获得要更改项的数据? sql2008 触发器,更新update数据时,如何可以取到指定字段(列)中的值 sql 触发器 update的问题 SQL触发器update问题 sql update触发器。急~ SQL的数据更新触发器 急!!怎么删除ACCESS中的重复记录 access 中怎么删除重复项 Access数据库用SQL语句 删除重复的数据! access中,怎样删除重复记录然后设置主键 关于ACCESS里,删除重复字段的信息条的SQL语句问题 如何删除ACCESS数据库中重复数据? 如何删除ACCESS中的重复字段 在Access表中设置主键需删除重复记录,怎么删除重复记录 求SQL语句厉害的大神!Access sql删除没有重复的数据,有重复的就留下 怎么用sql语句删除access 2个关系表的记录 sql server 2005 相除保留后两位的函数 sql server 2005 中怎么查看函数的