SQL Trigger là một sự kiện thiết lập một số sự kiện khác xảy ra khi người dùng tương tác với một bảng cụ thể. Câu lệnh SQL cụ thể này giúp bằng cách xác thực dữ liệu biểu mẫu hoặc thực thi các quy tắc.
Một trình kích hoạt được thực thi trước hoặc sau các sự kiện sau:
- CHÈN - khi một hàng mới được chèn.
- CẬP NHẬT - khi một hàng hiện có được cập nhật.
- XÓA - khi một hàng bị xóa.
Kích hoạt nào hoạt động và điều gì xảy ra phụ thuộc vào cách nó được viết. Hãy bắt đầu bằng cách tạo câu lệnh tạo:
CREATE TRIGGER <trigger_name> [BEFORE|AFTER] [INSERT|UPDATE|DELETE] ON <table_name> [FOR EACH ROW|FOR EACH STATEMENT] BEGIN <trigger_logic> END;
Giữa bất kỳ tập hợp <> nào, hãy thay thế bằng tên hoặc logic tùy chỉnh của bạn. Bên trong [], chọn một lựa chọn trong số các lựa chọn có sẵn.
TRƯỚC / SAU và CHÈN | CẬP NHẬT | XÓA:Chọn một từ mỗi danh sách. BEFORE / AFTER sẽ xác định thời điểm kích hoạt xảy ra. CHÈN / CẬP NHẬT / XÓA là sự kiện xảy ra sẽ khởi động trình kích hoạt.
CHO MỖI ROW | CHO TỪNG BÁO CÁO:Sự khác biệt giữa hai lựa chọn ở đây là sự khác biệt giữa số lần trình kích hoạt chạy. CHO MỖI ROW kích hoạt trên mỗi hàng bị ảnh hưởng trong bảng. ĐỐI VỚI MỖI THỐNG KÊ luôn được đảm bảo chạy ít nhất một lần, cho dù có bất kỳ hàng nào được cập nhật hay không.
Tương tự như cơ sở dữ liệu hoặc bảng, có một tùy chọn DROP TRIGGER:
DROP TRIGGER [IF EXISTS] trigger_name;
IF EXISTS là một phần tùy chọn của cú pháp. Nếu được bao gồm trong khối câu lệnh, phần ngăn lỗi "trình kích hoạt không tồn tại". Một bảng đã xóa cũng tự động loại bỏ tất cả các trình kích hoạt liên quan.
81% người tham gia cho biết họ cảm thấy tự tin hơn về triển vọng công việc công nghệ của mình sau khi tham gia một cuộc thi đào tạo. Kết hợp với bootcamp ngay hôm nay.
Sinh viên tốt nghiệp bootcamp trung bình đã dành ít hơn sáu tháng để chuyển đổi nghề nghiệp, từ khi bắt đầu bootcamp đến khi tìm được công việc đầu tiên của họ.
Biết rằng trình kích hoạt SQL yêu cầu ba điều chính:một câu lệnh tạo cung cấp tên cho trình kích hoạt và khi sự kiện xảy ra, tần suất trình kích hoạt xảy ra và sau đó là khối BEGIN / END đưa ra logic cho trình kích hoạt thực tế.
Hãy tiếp tục luyện tập nếu ban đầu bạn chưa hiểu - vì đây là một khái niệm nâng cao trong SQL nên nó có thể sẽ mất nhiều lần lặp lại hơn các chủ đề và hàm khác trong SQL.