SQL

[MSSQL]트리거 만들기(특정 Table에 INSERT시)

하루종일v 2017. 12. 14. 17:23

USE [GSTEST]
GO
/****** Object:  Trigger [dbo].[TB100_ID_CAR_NO_INSERT]    Script Date: 2017-12-14 오후 5:16:53 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: KJI
-- Create date: 2017.12.14
-- Description: TB100테이블에에 INSERT가 될경우 T100_DEV_NO = '101', T100_DEV_TYPE = '01' 이면
--    T100_IF_YN = 'N'을 T100_ID와 T100_CAR_NO은 insert된 값을 TB100_IF 테이블에 INSERT 한다.
-- =============================================
ALTER TRIGGER [dbo].[TB100_ID_CAR_NO_INSERT]     -- 트리거 명
   ON  [dbo].[TB100]     -- 트리거 만들 Table
   AFTER INSERT          -- INSERT후 트리거 실행하겠다는 의미
AS
BEGIN
 -- SET NOCOUNT ON added to prevent extra result sets from
 -- interfering with SELECT statements.
 SET NOCOUNT ON;

    -- Insert statements for trigger here

 SELECT * FROM inserted WHERE T100_DEV_NO = '101' AND T100_DEV_TYPE = '01'    -- inserted는 INSERT된 데이터를 의미
 -- TB100테이블에에 INSERT가 될경우 T100_DEV_NO = '101', T100_DEV_TYPE = '01' 이면

 IF @@RowCount > 0
  BEGIN
   INSERT INTO TB100_IF
   SELECT T100_ID, T100_CAR_NO, 'N' FROM inserted
   -- T100_IF_YN = 'N'을 T100_ID와 T100_CAR_NO은 insert된 값을 TB100_IF 테이블에 INSERT 한다.
  END
END

 

반응형