sql 觸發(fā)器使用例子

觸發(fā)器里沒(méi)有updated ,只有inserted 和deleted兩個(gè)臨時(shí)表。

inserted,deleted是在觸發(fā)器中使用的兩個(gè)臨時(shí)表,當(dāng)執(zhí)行insert操作時(shí),在inserted中存儲(chǔ)著當(dāng)前插入的記錄,在執(zhí)行delete操作時(shí),在deleted中存儲(chǔ)著當(dāng)前刪除的記錄,當(dāng)執(zhí)行update時(shí),在inserted中存儲(chǔ)著修改后的記錄,在deleted中存儲(chǔ)著修改前的記錄。
代碼如下:
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go

ALTER TRIGGER [dnt_user_add]
ON [dbo].[dnt_users]
AFTER INSERT
AS
BEGIN
SET NOCOUNT ON;
insert into [dnt_userfields](uid)
select uid from inserted

END

刪除:
代碼如下:
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE TRIGGER [dnt_users_del]
ON [dnt_users]
AFTER DELETE
AS
BEGIN

SET NOCOUNT ON;
delete [dnt_userfields] from deleted where [dnt_userfields].uid=deleted.uid

END
GO

修改:
代碼如下:
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

ALTER TRIGGER [dnt_users_up]
ON [dnt_users]
AFTER UPDATE
AS
BEGIN

SET NOCOUNT ON;
UPDATE [dnt_userfields] Set icq = inserted.uid from inserted where [dnt_userfields].uid = inserted.uid

END
GO

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊11 分享