본문 바로가기
IT/SQL

Trigger

by 민쌍 2020. 7. 7.

기본적인 트리거 생성 구문 

CREATE TRIGGER [dbo].[test_tg] ON [dbo].[member] -- member라는 테이블의 Trigger
FOR INSERT, UPDATE -- Insert나 Update시에 동작함
AS
  
SET NOCOUNT ON
  
DECLARE @memberID varchar(20)
  
select @memberID = memberID FROM INSERTED -- insert 된 테이블에서 memberID를 추출함
  
INSERT INTO test(test) values (@memberID)-- test 테이블에 Insert된 memberID를 Insert함
  
SET NOCOUNT OFF
CREATE TRIGGER [dbo].[test_tg] ON [dbo].[member]
FOR UPDATE
AS
  
SET NOCOUNT ON
declare @memberID varchar(20)
  
if update(memberID)
BEGIN
   select @memberID = memberID FROM INSERTED -- insert 된 테이블에서 memberID를 추출함
  
   INSERT INTO test(test) values (@memberID)-- test 테이블에 Insert된 memberID를 Insert함
END
  
SET NOCOUNT OFF

에러 데이터 입력시 따로 저장 

CREATE TRIGGER dbo.TRG_SPC_MAIN_HIS  
   ON  dbo.SPC_MAIN
   AFTER INSERT
AS 
BEGIN 
	SET NOCOUNT ON;;

	DECLARE @Action As CHAR(1) -- insert, update, delete 구분 변수 

	SET @Action = 'I' -- 기본 인서트 프래그 
    -- Insert statements for trigger here

	insert into SPC_MAIN_ERRHIS  SELECT * FROM inserted WHERE OKNG='NG' ;

END
728x90
반응형