插入下一条记录

时间:2012-08-24 11:24:55

标签: sql-server sql-server-2008

我有要求,我必须在一个BID,一个SID时插入记录,如果execdatestopbilldate存在,那么我需要插入NULLStopbilldate的新记录 示例示例如下:

Sno BID     SID LID     Comapny Execdate    StopBilldate
5   BLDG100 C   6500    Cole    1/5/2012    5/29/2012
6   BLDG100 C   000000  Vacant  5/30/2012   NULL

1 个答案:

答案 0 :(得分:1)

您可以在桌面上使用TRIGGER执行此操作。触发器是一种在事件发生时执行的存储过程。

以下是您可以放在桌面上的示例:

CREATE TRIGGER [trg_yourTable]
   ON  [yourTable]
   AFTER INSERT
AS 
BEGIN
    SET NOCOUNT ON;

    -- Insert statements for trigger here
    INSERT INTO yourTable (bid, sid, lid, company, execdate, stopbilldate)
    SELECT i.bid, i.sid, 0, 'Vacant', DATEADD(day, 1, i.stopbilldate), null
    FROM inserted i
    WHERE i.bid is not null
        and i.sid is not null
END

当您在表格中INSERT数据时,这将运行并INSERT要添加到表中的其他行。