Phiên bản được hỗ trợ:hiện tại(17) /16 / 15 / 14 / 13
Phiên bản phát triển:18 / Devel
Phiên bản không được hỗ trợ:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3
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 tỷ lệ kèo bóng đá phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

37.3. Viết các chức năng kích hoạt sự tỷ lệ kèo bóng đá trong C

9073_9528

Các chức năng kích hoạt sự tỷ lệ kèo bóng đá phải sử dụng"Phiên bản 1"Giao diện Trình quản lý tỷ lệ kèo bóng đá.

Khi một hàm được gọi bởi Trình quản lý kích hoạt sự tỷ lệ kèo bóng đá, nó không được thông qua bất kỳ đối số bình thường nào, nhưng nó được thông qua"Bối cảnh"Con trỏ trỏ đến AEventTriggerDataCấu trúc. Các chức năng C có thể kiểm tra xem chúng có được gọi từ Trình quản lý kích hoạt sự tỷ lệ kèo bóng đá hay không bằng cách thực thi macro:

được gọi là_as_event_trigger (fcinfo)

Mở rộng thành:

((fcinfo)- bối cảnh! = Null && isa ((fcinfo)- bối cảnh, eventTriggerData))

Nếu điều này trả về đúng, thì việc đúc là an toànfcinfo- bối cảnhđến loạiEventTriggerData *và sử dụng tỷ lệ kèo bóng đá pointed-toEventTriggerDataCấu trúc. Hàm phảikhôngthay đổiEventTriggerDataCấu trúc hoặc bất kỳ dữ liệu nào mà nó trỏ đến.

Struct EventTriggerDatađược xác định tronglệnh/event_trigger.h:

Typedef StructTriggerData

    Loại gật đầu;
    sự tỷ lệ kèo bóng đá const char *;      / * Tên sự tỷ lệ kèo bóng đá */
    Nút *parsetree;  / * cây phân tích */
    const char *thẻ;        / * thẻ lệnh */
 EventTriggerData;

trong đó tỷ lệ kèo bóng đá thành viên được xác định như sau:

loại

luôn luônT_EventTriggerData.

Sự tỷ lệ kèo bóng đá

Mô tả sự tỷ lệ kèo bóng đá mà hàm được gọi là, một trong"DDL_Command_Start", "DDL_COMMAND_END", "SQL_Drop", "Table_rewrite". Nhìn thấyPhần 37.1Đối với ý nghĩa của những sự tỷ lệ kèo bóng đá này.

Parsetree

Một con trỏ tới cây phân tích của lệnh. Kiểm tra mã nguồn PostgreSQL để biết chi tiết. Cấu trúc cây phân tích có thể thay đổi mà không cần thông báo.

TAG

Thẻ lệnh được liên kết với sự tỷ lệ kèo bóng đá mà kích hoạt sự tỷ lệ kèo bóng đá được chạy, ví dụ"Tạo tỷ lệ kèo bóng đá".

Chức năng kích hoạt sự tỷ lệ kèo bóng đá phải trả về AnullCon trỏ (khôngMột giá trị null SQL, nghĩa là, không đặtisnulltrue).