Nếu bạn thực thi các lệnh SQL trong hàm kích hoạt của mình và các lệnh này truy cập vào bảng mà bộ kích hoạt là để biết, thì bạn cần phải biết về các quy tắc hiển thị dữ liệu, bởi vì chúng xác định liệu các lệnh SQL này có thấy kèo bóng đá c1 mà kích hoạt được kích hoạt hay không. Tóm lại:
Trình kích hoạt cấp độ tuyên bố tuân theo các quy tắc hiển thị đơn giản: Không có kèo bóng đá c1 nào được thực hiện bởi một câu lệnh được hiển thị đối với cấp độ tuyên bốtrước
Triggers, trong khi tất cả các sửa đổi đều có thể nhìn thấy theo cấp độ tuyên bốsau
Triggers.
kèo bóng đá c1 (chèn, cập nhật hoặc xóa) khiến kích hoạt bị bắn là tự nhiênkhônghiển thị các lệnh SQL được thực thi ở cấp độ hàngtrước
Trigger, vì nó chưa xảy ra.
Tuy nhiên, các lệnh SQL được thực thi ở cấp độ hàngtrước
TriggerWillXem ảnh hưởng của các kèo bóng đá c1 đối với các hàng được xử lý trước đó trong cùng một lệnh bên ngoài. Điều này đòi hỏi phải thận trọng, vì việc đặt hàng các sự kiện thay đổi này không phải là dự đoán chung; lệnh SQL ảnh hưởng đến nhiều hàng có thể truy cập các hàng theo bất kỳ thứ tự nào.
Tương tự, cấp độ hàngkèo bóng đá c1 vì
Trigger sẽ thấy các tác động của các kèo bóng đá c1 được thực hiện bởi các vụ cháy trước đókèo bóng đá c1 vì
Kích hoạt trong cùng một lệnh bên ngoài.
Khi cấp độ hàngsau
Trigger được bắn, tất cả các kèo bóng đá c1 được thực hiện bởi lệnh bên ngoài đã hoàn tất và có thể hiển thị cho chức năng kích hoạt được gọi.
Nếu chức năng kích hoạt kèo bóng đá c1 bạn được viết bằng bất kỳ ngôn ngữ thủ tục tiêu chuẩn nào, thì các câu lệnh trên chỉ áp dụng nếu hàm được khai báoDisrily
. Các chức năng được khai báoổn định
hoặcImmutable
Sẽ không thấy các kèo bóng đá c1 được thực hiện bởi lệnh gọi trong mọi trường hợp.
Thông tin thêm về các quy tắc hiển thị dữ kèo bóng đá c1 có thể được tìm thấy trongPhần 46.4. Ví dụ trongPhần 38.4Chứa một minh chứng cho các quy tắc này.