Trigger trong SQL server là một stored procedure đặc biệt không tham số, chỉ được thực thi khi có một sự kiện (INSERT/DELETE/UPDATE) xảy ra trên table/view cụ thể. Khi trigger được thực hiện, SQL tự động tạo ra 2 bảng tạm với cùng cấu trúc với bảng chứa trigger.
INSERTED chứa dữ liệu mới khi chúng ta thực thi câu lệnh Insert hoặc câu lệnh Update.
DELETED chứa những bản ghi bị xoá khi chúng ta thực thi câu lệnh Delete hoặc chứa dữ liệu cũ khi chúng ta thực thi câu lệnh Update.
Trigger dùng để làm gì?
Trigger thường được sử dụng để kiểm tra ràng buộc (check constraints) trên nhiều quan hệ (nhiều bảng/table) hoặc trên nhiều dòng (nhiều record) của bảng.
Ngoài ra việc sử dụng Trigger để chương trình có những hàm chạy ngầm nhằm phục vụ nhưng trường hợp hữu hạn và thường không sử dụng cho mục đích kinh doanh hoặc giao dịch.
Trong vídeo này, tôi giới thiệu Trigger bình thường và Instead of Trigger.