이번에 트리거를 처음으로 사용해야만 하는데 tblMsg 테이블의 TResult 컬럼 업데이트 후
자기 테이블의 TResult와 UserID 값을 저장프로시저인 spMsgComp로 보내야 하는데
2개 값을 어떻게 전달하나요? 답답허네요.
//MSSQL2000
<--
CREATE TRIGGER trgMsgComp
ON tblMsg
AFTER UPDATE
AS
EXEC spMsgComp
@UserID = 'test', //요부분
@TResult = 3; //요부분
GO
-->
도움말만 찾아봐도 내용은 나옵니다. ^^;;
CREATE TRIGGER trgMsgComp
ON tblMsg
AFTER UPDATE
AS
declare @UserID varchar(20)
declare @TResult int
select @UserID = ins.UserID, @TResult= ins.TResult from inserted ins
EXEC spMsgComp @UserID, @TResult
go
2000에서 트리거는
inserted 와 deleted라는 논리적 테이블이 있습니다.
말그대로 추가된 데이터와 삭제된 데이터 입니다.
업데이트 될때는 deleted 가 발생하고 inserted 가 발생됩니다.
업데이트에서 deleted 는 예전값이고 inserted는 새로 변경된 값이겠지요.. ^^