触发插入多条记录

问题描述 投票:0回答:1

我正在尝试创建一个触发器,以将我从表中删除的所有值插入“备份”表中,例如:表1:NomePilota,ModelloVettura,NomeScuderia

BackupTable1(表2):NomePilota,ModelloVettura,NomeScuderia我想要从触发器执行的操作:将表1中已删除的值插入“表2”中。

我尝试过这样:

CREATE TRIGGER Backup ON dbo.Table1 AFTER (i can only use after) DELETE AS
BEGIN

  DECLARE @Pilota VARCHAR(20) = (SELECT NomePilota FROM deleted)

  DECLARE @Vettura VARCHAR(50) = (SELECT ModelloVettura FROM deleted)

  DECLARE @Scuderia VARCHAR(20) = (SELECT NomeScuderia FROM deleted)

  INSERT INTO Table2 (NomePilota, ModelloVettura, NomeScuderia) VALUES (@Pilota, @Vettura, @Scuderia)

但是它发送一个错误:无法在@ Pilota,@ Vet,@ Scud中插入多个记录

我该如何解决?被删除的表是否已经有一个默认ID列,可以像for中那样使用?我可以使用类似矢量的东西吗? (例如@Nome [] = SELECT * FROM Tabella,插入Tabella2(Nome)值@Nome [@Numero(numero类似于nome的记录号))]

sql-server sql-delete database-trigger
1个回答
1
投票

为什么不让生活变得简单?

© www.soinside.com 2019 - 2024. All rights reserved.