مرکز آموزش

Trriger (تریگر) چیست؟

اگر نیاز داشته باشید همزمان با ورود اطلاعات ، حذف اطلاعات ، ویرایش رکوردها در جدول ، اتفاق خاصی رخ دهد از تریگر (Trigger) استفاده می کنیم .

در Sql Server های 2005 به بالا اگر روی + هر یک از جداول کلیک کنید با بخشی به نام Triggers مواجه می شوید.

با کلیک راست بر روی Triggers و انتخاب Nwe Trigger پنجره ای باز خواهد شد و به صورت پیش فرض بدنه ی Trigger را به صورت آماده برای شما نمایش می دهد و شما می توانید این بدنه را تغییر دهید و ویرایش نمایید:

برای مثال فرض کنید جدول زیر را داریم:

CREATE TABLE [dbo].[tblBlackList](
[ID] [int] IDENTITY(1,1) NOT NULL,
[Phone] [varchar](50) NOT NULL,
[IsOrginal] [int] NOT NULL,
[Date] [datetime2](7) NOT NULL,
[Type] [int] NOT NULL,
CONSTRAINT [PK_tblBlackList] PRIMARY KEY CLUSTERED
(
[ID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]


فرض کنید در هنگام ورود اطلاعات به جدول فوق نیاز داریم اگر phone آن 09365223330 بود آن را به 09104985356 تغییر دهیم .

برای این کار تریگر زیر را بر روی جدول فوق ایجاد می نماییم :


SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

-- =============================================
-- Author:       
-- Create date: <1396 08 27>
-- Description:   
-- =============================================

CREATE TRIGGER RechangeNumber
ON [dbo].[tblBlackList]
AFTER insert
AS
declare @phone as varchar(50);
BEGIN
select @phone=phone from inserted
if(@phone='09365223330')
begin
update [dbo].[tblBlackList] set phone ='09104985356'
where phone ='09365223330'
end

END
GO




آیا این پاسخ به شما کمک کرد?

افزودن به مورد علاقه ها افزودن به مورد علاقه ها

پرینت این مقاله پرینت این مقاله

در همین زمینه
دستور Inner Join (مشاهدات: 1094)
یک select ساده (مشاهدات: 1048)

زبان:

ایمن گستران تهران