读书人

各位帮帮忙关于触发器的有关问题多谢

发布时间: 2012-02-13 17:20:26 作者: rapoo

各位帮帮忙,关于触发器的问题谢谢了(我的分都给你们了只求你们回答我)
CREATE TRIGGER bp_InsTankCurve

on Rpt_CaseRecord

for insert,update

as

begin

declare @TankID as int
declare @sDate as varchar(10)
declare @sTime as varchar(10)
declare @OilNumCode as varchar(20)
declare @OilHeigh as decimal (18,1)

select
@TankID = tankID,
@sDate = sdate,
@sTime = stime,
@OilNumCode = oilNumCode,
@OilHeigh = oilh
from inserted

insert into [Dic_TankCurve]
(
TankID,
sDate,
sTime,
OilNumCode,
OilHeigh
)
values
(
@TankID,
@sDate,
@sTime,
@OilNumCode,
@OilHeigh
)

end


这是我写的一个触发器,我想让触发器忽略某一行的更新,说明白点就是SQL SERVER 的触发器是针对表的,怎样写一个针对字段的触发器。
请高人给写一个例子。
谢谢了


[解决办法]
if update(字段)
begin
...
end
[解决办法]
用IF UPDATE做判


IF UPDATE (column)

所指定料行的 INSERT 或 UPDATE 作,且不含使用 DELETE 作。可以指定一以上的料行。由於料表名是在 ON 子句中指定,勿在 IF UPDATE 子句中的料行名之前加入料表名。若要多料行的 INSERT 或 UPDATE 作,在第一 UPDATE(column) 子句後面指定各的 UPDATE(column) 子句。假如 UPDATE 在 INSERT 作回 TRUE 值,因料行不是有外的值就是有的 (NULL) 值插入。

读书人网 >SQL Server

热点推荐