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 choPostgreSQL : 문서 : 17 : 38.3. C의 스포츠 토토 트리거 기능 작성Phiên bản hoặc một trong các phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

38.3. Viết các 토토 결과 năng kích hoạt sự kiện trong C

Phần này mô tả các chi tiết cấp thấp của giao diện với chức năng kích hoạt sự kiện. Thông tin này chỉ cần thiết khi viết các chức năng kích hoạt sự kiện trong C. Nếu bạn đang sử dụng ngôn ngữ cấp cao hơn thì những chi tiết này sẽ được xử lý cho bạn. Trong hầu hết các trường hợp, bạn nên xem xét sử dụng một ngôn ngữ thủ tục trước khi viết các trình kích hoạt sự kiện của mình trong C. Tài liệu của từng ngôn ngữ thủ tục giải thích cách viết trình kích hoạt sự kiện bằng ngôn ngữ đó.

Các 토토 결과 năng kích hoạt sự kiện phải sử dụng"Phiên bản 1"Giao diện Trình quản lý 토토 결과 năng.

Khi một hàm được gọi bởi Trình quản lý kích hoạt sự kiện, 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 토토 결과 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ự kiện 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 các 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ự kiện const char *;      / * Tên sự kiện */
    Nút *parsetree;  / * cây phân tích */
    const char *thẻ;        / * thẻ lệnh */
 EventTriggerData;

trong đó các thành viên được xác định như sau:

loại

luôn luônT_EventTriggerData.

Sự kiện

Mô tả sự kiện mà hàm được gọi là, một trong"DDL_Command_Start", "DDL_COMMAND_END", "SQL_Drop", "Table_rewrite". Nhìn thấyPostgreSQL : 문서 : 9.6 : 이벤트 범퍼카 토토 동작 개요Đối với ý nghĩa của những sự kiện 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ự kiện mà kích hoạt sự kiện được chạy, ví dụ"Tạo 토토 결과 năng".

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