昨天面試時,機試有一題要求寫一個觸發器,之前沒寫過,那時只能寫出個基本語法,但功能實現有錯.今天把它實現了..
題目:T1表
CREATE TABLE [dbo].[t1] (
[pid] [int] IDENTITY (1, 1) NOT NULL ,
[price] [float] NOT NULL
) ON [PRIMARY]
GO
T2 表
CREATE TABLE [dbo].[t2] (
[pid] [int] NOT NULL ,
[pitemid] [int] IDENTITY (1, 1) NOT NULL ,
[qty] [float] NOT NULL ,
[psum] [float] NULL
) ON [PRIMARY]
要求寫一觸發器,插入或更新T2表QTY字段的值時,同時使得psum=qty*T1.Price
今天寫的觸發器代碼:
Create Trigger tg_sum
On dbo.t2
For Insert,Update
As
Update t2 Set psum=qty*price From t2 Inner Join t1 On t2.pid=t1.pid
初學觸發器,質量很差.