2011-09-22 41 views
0

我有三個表,需求,selloffer和貿易。 Tradelead是一個表格,它包含前兩個表格的共同實體。這種情況下的SQL觸發器是什麼?

Schema of requirement: 
    reqId, name, description, posteddate, companyid, cat1,cat2,cat3 .... 

Schema of selloffer: 
    sellid, name, description, posteddate, companyid, cat1,cat2,cat3 .... 

Schema of tradelead: 
    id, name, description, posteddate, companyid, cat1,cat2,cat3, typeid 

在這裏,我正在使用typeid區分買入和賣出。它的購買,然後1將隨數據插入其他2.

那麼,什麼是我的觸發器上述情況?

情景: 每當行或者插入要求或selloffers,行也將獲得創建到供求信息表,使用上述columns.Mean當需求被創建的行還獲得創建的說在類型爲id = 1的TradeLead中,並且如果它是在selloffers中創建的,則tradelead將填充type = 2並保持不變。 我希望,我現在很清楚

+0

具體什麼是應該插入和成什麼樣的表,其表?這是一個簡單的'INSERT'觸發器,但它取決於標準和插入的位置。 – Wil

+0

交易標識中的id列是否爲IDENTITY列,或者它是源行的reqId還是sellid? –

+0

以id爲後綴的第一列是peimary鍵 –

回答

2
CREATE TRIGGER dbo.requirment_insert 
ON dbo.requirment 
FOR INSERT 
AS 
BEGIN 
    INSERT dbo.tradelead(id, name, ..., typeid) 
     SELECT reqId, name, ..., 1 
     FROM inserted; 
END 
GO 

CREATE TRIGGER dbo.selloffer_insert 
ON dbo.selloffer 
FOR INSERT 
AS 
BEGIN 
    INSERT dbo.tradelead(id, name, ..., typeid) 
     SELECT sellid, name, ..., 2 
     FROM inserted; 
END 
GO