Sql 我希望使用触发器将数据从一个表复制到另一个表,而不复制数据
我有两张桌子 在表1中,每个时刻添加行取决于用户插入 在表2中,我想复制表1中添加的每一行,但有特定的条件 表2还有一些额外的列,我稍后需要它们 我想用触发器,但我不知道怎么做 我已经尝试了存储过程,但不是自动尝试的 插入ax.RETAILTRANSACTIONSALESTRANS2 [条形码] ,[CREATEDDATETIME] ,[姓名] ,[ITEMID] ,[NetaTax] ,[数量] ,[斯塔夫] ,[TERMINALID] ,[转换日期] ,[周期百分比折扣] ,[ReceiptID] 选择ab[条形码] ,ab.[CREATEDDATETIME] ,[ax].[ECORESPRODUCTTRANSLATION].[NAME] ,ab.[ITEMID] ,ab.[价格] ,ab.[数量] ,ab.[斯塔夫] ,ab.[终端] ,ab.[转换日期] ,ab.[周期百分比折扣] ,ab.RECEIPTID 来自ax.RetailTransactionSalesTrans ab ab上的内部联接[ax].[INVENTTABLE]。[ITEMID]=[ax].[INVENTTABLE].[ITEMID] [ax].[INVENTTABLE].PRODUCT=[ax].[ECORESPRODUCTTRANSLATION].[PRODUCT]上的内部联接[ax].[ECORESPRODUCTTRANSLATION] 左连接ax.RETAILTRANSACTIONSALESTRANS2 a打开 a、 [条形码]=ab[条形码] 和a[CREATEDDATETIME]=ab[CREATEDDATETIME] 和a.[ITEMID]=ab.[ITEMID] 和a[netaax]=ab[PRICE] 和a[数量]=ab[数量] 和a[STAFFID]=ab[STAFFID] 和a.[TERMINALID]=ab.[TERMINALID] 和a[TRANSDATE]=ab[TRANSDATE] 和a.[PERIODICPERCENTAGEDISCOUNT]=ab.[PERIODICPERCENTAGEDISCOUNT] 以及a.Process=null和a.Checked=null和a.[Select]=null 其中ab.[QTY]>0和ab.[RECEIPTID]!=和ab.[TRANSDATE]>=DATEADDday,@daycount*-1,GetDateSql 我希望使用触发器将数据从一个表复制到另一个表,而不复制数据,sql,sql-server,triggers,copy,database-trigger,Sql,Sql Server,Triggers,Copy,Database Trigger,我有两张桌子 在表1中,每个时刻添加行取决于用户插入 在表2中,我想复制表1中添加的每一行,但有特定的条件 表2还有一些额外的列,我稍后需要它们 我想用触发器,但我不知道怎么做 我已经尝试了存储过程,但不是自动尝试的 插入ax.RETAILTRANSACTIONSALESTRANS2 [条形码] ,[CREATEDDATETIME] ,[姓名] ,[ITEMID] ,[NetaTax] ,[数量] ,[斯塔夫] ,[TERMINALID] ,[转换日期] ,[周期百分比折扣] ,[Receip
并且不存在从ax.RETAILTRANSACTIONSALESTRANS2中选择*,其中[CREATEDDATETIME]=ab.[CREATEDDATETIME]您可以使用下面的命令并编辑所需的列,想法是从插入中选择插入到主表中的所有行
CREATE TRIGGER TRetailTransactionSalesTrans ON RetailTransactionSalesTrans
FOR INSERT
AS
BEGIN
INSERT INTO RETAILTRANSACTIONSALESTRANS2
SELECT [BARCODE]
,[CREATEDDATETIME]
,[Name]
,[ITEMID]
,[NETAMOUNTINCLTAX]
,[QTY]
,[STAFFID]
,[TERMINALID]
,[TRANSDATE]
,[PERIODICPERCENTAGEDISCOUNT]
,[ReceiptID]
FROM Inserted;
END
请参阅触发器文档,因为我看到错误消息207,级别16,状态1,过程TRetailTransactionSalesTrans,第3行无效列名“name”。Msg 213,级别16,状态1,过程TRetailTransactionSalesTrans,第2行列名或提供的值的数量与表定义不匹配。表tow比表1多4列,但这些列在表1上不存在,并且与表1没有关系,并且名称列来自另一个具有内部联接的表