sql server 触发器引用最后一行

标签 sql sql-server database triggers

我想在 SQL Server 中编写一个触发器,以便在 table1 中插入一行时将 2 行插入 table2。我想使用 table1 中的列值。

所以我的触发器看起来像这样

create trigger triggername on table1
as
begin
insert into
insert into
end

如何从最后插入的行(触发触发器的行插入)中获取任何列的值。 IE。相当于 oracle 中的“引用行”

最佳答案

SQL Server 中的触发器按语句触发,而不是按行触发。您可以使用两个伪表 inserteddeleted(对于 insert 触发器,唯一感兴趣的是 inserted)

CREATE TRIGGER YourTrigger ON Table1
FOR INSERT
AS
INSERT INTO Table2 
SELECT * from inserted /*This will contain multiple rows if it is a multi-row insert*/

关于sql server 触发器引用最后一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4323911/

相关文章:

MYSQL - 加入多个日期 - 仅从加入中获取第一个

php - 删除前检查company是否存在于其他表中

sql - 根据 id 列表为多条记录插入相同的值

Javascript正则表达式从连接sql查询中获取表名

SQLite - 生成包含总计的表,但从 SUM 中排除重复条目

sql - INNER JOIN 和 LEFT/RIGHT OUTER JOIN 的问题

sql-server - 远程连接本地SQL Server

使用值列表中随机但唯一的值更新字段的 SQL 命令

sql - 在同一查询中使用 UNION 和 UNION ALL

rdbms - 当我们说 dbms 时,它是文件吗?