Friday, April 8, 2016
ngôn ngữ lập trình căn bản trong sql server
25
BẨY SỰ KIỆN (TRIGGER)
update(tên_cột)
:
Trả về kết quả True / False nếu cột đó bị
cập
nhập.
columns_updated() :
Trả về một số xác định các cột được cập nhậ
p.
Ví dụ: Bang (c1,c2,c3,c4)
Nếu c2 được cập nhật => 0010: kết quả 2
Nc1,c3,c4 được cập nhật =>1101: kết quả 13
ếu
26
BẨY SỰ KIỆN (TRIGGER)
Thay
đổi thông số cho phép đệ quy trực
tiếp
alter database tendatabase set recursive_triggers { o
n | of }
(Update T1, kích chạy Trigger 1. Trigger 1 chạy update T1 lần nữa, kích ch
ạy
Trigger 1…)
Th lập giới hạn lồng nhau (đệ quy gián tiếp)
iết exec sp_configure ‘Nested Triggers’ n
(Update T1, kích chạy Trigger 1. Trigger 1 chạy update T2, kích chạy Trigg
er 2.
Trigger 2 chạy update T1, kích chạy Trigger 1. …)
Lồng nhau được tối đa là 32 cấp độ.
27
BẨY SỰ KIỆN (TRIGGER)
Tạo trigger
create trigger tên_trigger
on
tên_bảng
{for|instead of} {insert|delete|update}
as
lệnh | khối_lệnh
Xóa và thay đổi
Alter | Drop trigger tên_trigger
………..
28
BẨY SỰ KIỆN (TRIGGER)
Tạo trigger cho bảng sinhvien (masv, tensv, malop)
thỏa mãn điều kiện một lớp không quá 20 người.
Create trigger tssv on sinhvien for insert,update As
Begin
declare @malop char(5), @ts int
select @malop = malop from inserted
select @ts = count(*) from sinhvien
where malop=@malop
if (@ts > 20)
rollback transaction
end
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment