首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL更新触发器-保留所有会话/版本

SQL更新触发器-保留所有会话/版本
EN

Stack Overflow用户
提问于 2016-01-25 17:27:28
回答 1查看 55关注 0票数 0

我有一个名为InvStockTake (P)的生产表,该表将复制到另一个服务器上的也称为InvStockTake(R)的表。

将它们引用为P用于生产,R用于复制。

在复制表InvStockTake(R)上,我创建了一个insert触发器,如下所示,它将把插入的数据复制到另一个名为InvStockTakeReplicate(R)的表中。

代码语言:javascript
复制
ALTER TRIGGER [dbo].[trgAfterInsert] ON [dbo].[InvStockTake] 
FOR INSERT
AS  
    insert into SysproCompanyR.dbo.InvStockTakeReplicate
           (Warehouse,StockCode,Bin,OrigQtyOnHand,QtyCaptured,SaveDate,ProductClass,Uom,Reference,PrintedFlag,Decimals,NumTimesCaptured,CreatedBinFlag,SelectionCost) 
    SELECT  Warehouse,StockCode,Bin,OrigQtyOnHand,QtyCaptured,SaveDate,ProductClass,Uom,Reference,PrintedFlag,Decimals,NumTimesCaptured,CreatedBinFlag,SelectionCost 

    FROM inserted; 

问题是,我的生产表中的表会是这样的

代码语言:javascript
复制
Warehouse   StockCode   Bin OrigQtyOnHand   QtyCaptured SaveDate    ProductClass NumTimesCaptured
A1          20402205   S10D04       12       12         2016-10-27           333  3
A1          20402206   S10D03       11       11         2016-10-27           376  2
A1          30303021   S10F04        2       2          2016-10-27           354  1
A1          32700103   S10A04        1       1          2016-10-27           333  1

当它被插入时,它将复制到我的另一个表中。

现在这个表的工作原理是,当仓库处于盘点模式时,人们将在这里连续捕获。因此,您将看到numerous列将随着众多人的捕获而更新,同时qtycaptured也会发生变化。

所以我还需要一个更新触发器,但是现在假设盘点完成了,2周后这个仓库A1被置于盘点模式,它将从我的生产数据库中清除所有A1盘点,并插入需要再次计算的库存的新记录。但现在保存日期将更改为新日期。

现在我假设当这种情况发生时,由于我只有一个插入触发器,它将只插入这些新记录。但是我的更新触发器会发生什么呢?它将需要用新的日期更新记录...

因此,如果有人可以帮助我完成这个更新触发器,那将会有很大的帮助,因为我最终需要构建一个表来保存所有不同的库存记录会话/版本。

EN

回答 1

Stack Overflow用户

发布于 2016-01-26 18:40:31

由于您希望保留每个记录的每个版本,因此UPDATE触发器可以与INSERT触发器相同。您所要做的就是将其从:

代码语言:javascript
复制
ALTER TRIGGER [dbo].[trgAfterInsert] ON [dbo].[InvStockTake] 
FOR INSERT
AS  

至:

代码语言:javascript
复制
ALTER TRIGGER [dbo].[trgAfterInsert] ON [dbo].[InvStockTake] 
FOR INSERT, UPDATE
AS  
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34989044

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档