
Trigger

Trigger là gì??
Là các chương trình lưu trữ bên trong CSDL.
Mỗi trigger tương ứng với một bảng.
Được kích hoạt khi có thao tác trên bảng.
Được tạo bởi người dùng có quyền Trigger.
Xuất hiện từ MySQL Server 5.0.2

Tại sao lại sử dụng Trigger??
Là cơ chế hữu dụng đảm bảo tính toàn vẹn
dữ liệu.
Được kích hoạt tự động khi có các thao tác
trên dữ liệu của bảng ( thêm, sửa, xóa)
Thay thế kiểm tra dữ liệu bằng tay

Cú pháp
CREATE
[DEFINER = { user | CURRENT_USER }]
TRIGGER trigger_name trigger_time trigger_event
ON tbl_name FOR EACH ROW trigger_body
Hoặc
CREATE TRIGGER trigger_name trigger_time trigger_event
ON table_name
FOR EACH ROW
BEGIN
...
END

Cú pháp
Trong đó:
trigger_name: tên trigger
trigger_time: thời gian thực thi trigger
−BEFORE
−AFTER
trigger_event: Kiểu câu lệnh kích hoạt trigger
−INSERT
−UPDATE
−DELETE