PostgreSQL: kèo chấp bóng đá hôm nay liệu: | |||
---|---|---|---|
prev | UP | Chương 31.libpq- C Thư viện | NEXT |
Thông kèo bóng đá pháp và cảnh kèo bóng đá pháp thông kèo bóng đá pháp do máy chủ tạo ra không được trả về bởi các chức năng thực thi truy vấn, vì chúng không ngụ ý thất bại của truy vấn. Thay vào đó, chúng được chuyển đến một chức năng xử lý thông kèo bóng đá pháp và việc thực thi tiếp tục bình thường sau khi trình xử lý trở lại. Hàm xử lý thông kèo bóng đá pháp mặc định in thông kèo bóng đá pháp trênstderr, nhưng ứng dụng có thể ghi đè hành vi này bằng cách cung cấp chức năng xử lý của chính nó.
10851_11261
hàmpqsetnoticereceiver
11329_11413PQSetNoticeProcessor
Đặt hoặc kiểm tra bộ xử lý thông kèo bóng đá pháp hiện tại.
typedef void ( *pqnoticereceiver) (void *arg, const pgresult *res); Pqnoticereceiver Pqsetnoticereceiver (PGConn *Conn, Pqnoticereceiver Proc, void *arg); typedef void ( *pqnoticeProcessor) (void *arg, const char *message); PQnoticeProcessor PQSetNoticeProcessor (PGConn *Conn, PQnoticeProcessor Proc, void *arg);
Mỗi chức năng này trả về đầu thu thông kèo bóng đá pháp hoặc con trỏ hàm bộ xử lý trước đó và đặt giá trị mới. Nếu bạn cung cấp một con trỏ hàm null, không có hành động nào được thực hiện, nhưng con trỏ hiện tại được trả về.
Khi nhận được thông kèo bóng đá pháp hoặc thông kèo bóng đá pháp cảnh kèo bóng đá pháp từ máy chủ hoặc được tạo nội bộ bởilibpq, Hàm người nhận thông kèo bóng đá pháp được gọi. Nó được truyền tin nhắn dưới dạngPGRES_NONFATAL_ERROR PGRESULT. (Điều này cho phép người nhận trích xuất các trường riêng lẻ bằng cách sử dụngpqresulterrorfield
hoặc thông kèo bóng đá pháp được định dạng hoàn chỉnh bằng cách sử dụngpqresulterrormessage
.) Cùng một khoảng trống được truyền đếnpqsetnoticereceiver
12740_12833
Bộ thu thông kèo bóng đá pháp mặc định chỉ cần trích xuất thông kèo bóng đá pháp (sử dụngpqresulterrormessage
) và chuyển nó cho bộ xử lý thông kèo bóng đá pháp.
Bộ xử lý thông kèo bóng đá pháp chịu trách nhiệm xử lý thông kèo bóng đá pháp thông kèo bóng đá pháp hoặc cảnh kèo bóng đá pháp được đưa ra ở dạng văn bản. Nó được truyền văn bản chuỗi của tin nhắn (bao gồm cả dòng mới), cộng với một con trỏ khoảng trống giống nhau được truyền đếnPQSetNoticeProcessor
. (Con trỏ này có thể được sử dụng để truy cập trạng thái dành riêng cho ứng dụng nếu cần.)
Bộ xử lý thông kèo bóng đá pháp mặc định chỉ đơn giản là:
Vốc tĩnh DefaultNoticeProcessor (void *arg, const char *message) fprintf (stderr, "%s", tin nhắn);
Khi bạn đã đặt bộ thu hoặc bộ xử lý thông kèo bóng đá pháp, bạn nên mong đợi rằng chức năng đó có thể được gọi miễn làPGConnĐối tượng hoặcPGRESULTCác đối tượng được làm từ nó tồn tại. Tại Sáng tạo của Apgresult, ThePGConnCác con trỏ xử lý thông kèo bóng đá pháp hiện tại được sao chép vàopgresultĐể sử dụng có thể bởi các chức năng nhưPQGetValue
.
Prev | Trang chủ | PostgreSQL: |
Hàm linh tinh | UP | Hệ thống sự kiện |