Phiên bản không được hỗ trợ:7.0 / 6.5 / 6.4
Tài liệu này dành cho phiên bản không được hỗ trợ của PostgreSQL.
Bạn có thể muốn xem cùng một trang chohiện tạiPhiên bản hoặc một trong kèo bóng đá hôm nay và ngày mai mai phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

kèo bóng đá hôm nay và ngày maiChương 47. Triggers

PostgresCó khách hàng khác nhau kèo bóng đá hôm nay và ngày mai giao diện như Perl, TCL, Python và C, cũng như baNgôn ngữ thủ tục(PL). Nó cũng là Có thể gọi các chức năng C là hành động kèo bóng đá hôm nay và ngày mai. Lưu ý rằng Các sự kiện kèo bóng đá hôm nay và ngày mai cấp tuyên bố không được hỗ trợ trong hiện tại phiên bản. Bạn hiện có thể chỉ định trước hoặc sau khi chèn, Xóa hoặc cập nhật bộ tuple dưới dạng sự kiện kèo bóng đá hôm nay và ngày mai.

Trigger Sáng tạo

Nếu xảy ra sự kiện kèo bóng đá hôm nay và ngày mai, trình quản lý kèo bóng đá hôm nay và ngày mai (được gọi bởi Executor) Khởi tạo cấu trúc toàn cầu TriggerData *CurrentTriggerData (được mô tả bên dưới) và gọi trình kèo bóng đá hôm nay và ngày mai chức năng để xử lý sự kiện.

Hàm kèo bóng đá hôm nay và ngày mai phải được tạo trước khi kèo bóng đá hôm nay và ngày mai là được tạo như một hàm không có đối số và trả về mờ đục.

Cú pháp để tạo trình kèo bóng đá hôm nay và ngày mai như sau:

Tạo TriggerTrigger[Trước | Sau] [chèn | Xóa | Cập nhật [hoặc ...]]
    TRÊNMối quan hệcho mỗi [hàng | TUYÊN BỐ ]
    Thực hiện thủ tụcQuy trình(args);
nơi đối số ở:
Trigger

Tên của bộ kèo bóng đá hôm nay và ngày mai được sử dụng nếu bạn phải xóa kèo bóng đá hôm nay và ngày mai. Nó được sử dụng như một đối số choDrop Triggerlệnh.

Trước, sau

Xác định xem chức kèo bóng đá hôm nay và ngày mai được gọi trước hay sau sự kiện.

Chèn, xóa, cập nhật

Phần tử tiếp theo của lệnh xác định trên (các) sự kiện nào sẽ kèo bóng đá hôm nay và ngày mai chức năng. Nhiều sự kiện có thể được chỉ định tách biệt bởi hoặc.

Mối quan hệ

Tên quan hệ xác định bảng nào mà sự kiện áp dụng ĐẾN.

hàng, câu lệnh

Đối với mỗi mệnh đề xác định xem kèo bóng đá hôm nay và ngày mai có được bắn không Đối với mỗi hàng bị ảnh hưởng hoặc trước (hoặc sau) toàn bộ câu lệnh đã hoàn thành.

Quy trình

Tên thủ tục là hàm C được gọi là.

args

Các đối số được truyền cho hàm trong Cấu trúc hiện tạitriggerdata. Mục đích của việc thông qua các đối số cho chức năng là cho phép các kèo bóng đá hôm nay và ngày mai khác nhau có các yêu cầu để gọi cùng một hàm.

Ngoài ra,Quy trìnhcó thể được sử dụng để kèo bóng đá hôm nay và ngày mai các mối quan hệ khác nhau (các chức năng này được đặt tên như "chức năng kèo bóng đá hôm nay và ngày mai chung").

Ví dụ về việc sử dụng cả hai tính năng ở trên, có thể có một chức năng chung lấy làm đối số của nó, hai tên trường và đặt người dùng hiện tại vào một và dấu thời gian hiện tại cái khác. Điều này cho phép các yếu tố kèo bóng đá hôm nay và ngày mai được viết trên các sự kiện chèn Để tự động theo dõi việc tạo hồ sơ trong một giao dịch Bảng ví dụ. Nó cũng có thể được sử dụng như một "cập nhật lần cuối" chức năng nếu được sử dụng trong một sự kiện cập nhật.

Các chức năng kèo bóng đá hôm nay và ngày mai trả về trọng lượng cho người thực thi gọi. Cái này bị bỏ qua cho các kèo bóng đá hôm nay và ngày mai được bắn sau khi chèn, xóa hoặc cập nhật Hoạt động nhưng nó cho phép trước khi kèo bóng đá hôm nay và ngày mai:

  • Trả về NULL để bỏ qua thao tác cho tuple hiện tại (và Vì vậy, tuple sẽ không được chèn/cập nhật/xóa).

  • Trả lại một con trỏ cho một tuple khác (chỉ chèn và chỉ cập nhật) sẽ được chèn (là phiên bản mới của bộ tu Nếu cập nhật) thay vì tuple gốc.

Lưu ý rằng không có khởi tạo nào được thực hiện bởi Tạo Trình xử lý kèo bóng đá hôm nay và ngày mai. Điều này sẽ được thay đổi trong tương lai. Ngoài ra, nếu nhiều hơn hơn một kèo bóng đá hôm nay và ngày mai được xác định cho cùng một sự kiện Mối quan hệ, thứ tự bắn kèo bóng đá hôm nay và ngày mai là không thể đoán trước. Đây có thể là đã thay đổi trong tương lai.

Nếu chức năng kèo bóng đá hôm nay và ngày mai thực thi SQL-Quaeries (bằng SPI) thì Các truy vấn này có thể kèo bóng đá hôm nay và ngày mai một lần nữa. Điều này được gọi là xếp tầng kèo bóng đá hôm nay và ngày mai. Không có giới hạn rõ ràng về số lượng thác cấp độ.

Nếu một bộ kèo bóng đá hôm nay và ngày mai được bắn bằng cách chèn và chèn một tuple mới trong Cùng một mối quan hệ sau đó kèo bóng đá hôm nay và ngày mai này sẽ được bắn lại. Hiện nay, Không có gì được cung cấp để đồng bộ hóa (v.v.) Nhưng điều này có thể thay đổi. Hiện tại, có chức năng Funny_dup17 () Trong các thử nghiệm hồi quy sử dụng một số kỹ thuật để ngăn chặn đệ quy (xếp tầng) trên chính nó ...