Trigger (4)
trigger로 사용자의 활동 기록하기
예시)
1. LogTable 만들기
create Table LogTable(
logdate datetime not null,
logUser varchar(30) null,
logTableName varchar(30) null,
logOperation varchar(30) null,
logRecord varchar(max) null
)
2. 기록할 Trigger 만들기
create trigger tr_deleteBranch
on dbo.Branch
for delete
as
begin
declare
@c1 datetime,
@c2 varchar(30) ,
@c3 varchar(30) ,
@c4 varchar(30) ,
@c5 varchar(max)
set @c1 = getdate()
set @c2 = suser_name()
set @c3 = 'dbo.Branch'
set @c4 = 'delete'
select @c5 = branchNo+','+street+','+city+','+postcode from deleted
insert into LogTable values(@c1, @c2, @c3, @c4, @c5)
end
go
>> 시스템 테이블인 inderted 와 deleted 사용할 수 있다.
사용

>> 행을 삭제해서 trigger를 작동시킨 후

>> 행이 추가된 것을 확인
반응형
'백엔드 > SQL' 카테고리의 다른 글
| [SQL] Trigger (3) (0) | 2021.12.13 |
|---|---|
| [SQL] Trigger (2) (0) | 2021.12.13 |
| [SQL] Trigger (1) (1) | 2021.12.13 |
| [SQL] N' ' (0) | 2021.12.04 |
| [SQL] Stored procedure (2) (1) | 2021.12.04 |
댓글