34,594
社区成员
发帖
与我相关
我的任务
分享
CREATE TRIGGER [trgLotNoChangeLog] ON [dbo].[tblFiber]
FOR UPDATE
AS
IF @@ROWCOUNT>1 AND UPDATE(strLotNumber)
BEGIN
RAISERROR 50001N'多條更改'
ROLLBACK TRAN
RETURN
END
--以下自己加上列名
INSERT INTO tblFiberChanged
SELECT d.strLotNumber AS strLotNoOLD,i.strLotNumber AS strLotNoNEW,i.lngModifiedUserID,GetDate()
FROM INSERTED AS i,DELETED AS d
CREATE TRIGGER tr_tblFiber ON tblFiber
FOR UPDATE
AS
IF @@ROWCOUNT>1 AND UPDATE(strLotNumber)
BEGIN
RAISERROR 50001N'多條更改'
ROLLBACK TRAN
RETURN
END
--以下自己加上列名
INSERT INTO tblFiberChanged
SELECT d.strLotNumber AS strLotNoOLD,i.strLotNumber AS strLotNoNew
FROM INSERTED AS i,DELETED d
create trigger updatePK
on tblFiber
after update
as
begin
if update(strLotNumber)
insert into tblFiberChanged
select a.strLotNumber,b.strLotnumber,CURRENT_USER,getdate()
from deleted a inner join inserted b on a.col2=b.col2 and a.col3=b.col3 and a.col4=b.col4 and .... --因为主键被修改了,所以要用其他能代表该行的列来对比.
end
create trgger tr_name on tblFiber
for update
as
begin
insert into 记录表
select strLotNo from deleted,
select strLotNo from inserted,
--人从哪来?
getdate()
end