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

61.1. Cấu trúc API cơ bản cho các chỉ kèo chấp bóng đá hôm nay

Mỗi phương thức truy cập chỉ kèo chấp bóng đá hôm nay được mô tả bằng một hàng trongpg_amDanh kèo chấp bóng đá hôm nay hệ thống. Thepg_amkèo chấp bóng đá hôm nay nhập Chỉ định tên và AChức năng xử lýĐối với phương thức truy cập chỉ kèo chấp bóng đá hôm nay. Các kèo chấp bóng đá hôm nay này có thể được tạo và xóa bằng cách sử dụngTạo phương thức truy cậpPhương thức truy cập thảkèo chấp bóng đá hôm nay lệnh SQL.

Hàm xử lý phương thức truy cập chỉ kèo chấp bóng đá hôm nay phải được khai báo để chấp nhận một đối số duy nhất loạiNội bộvà để trả về loại giảindex_am_handler. Đối số là một giá trị giả chỉ đơn giản là phục vụ để ngăn chặn kèo chấp bóng đá hôm nay hàm xử lý được gọi trực tiếp từ kèo chấp bóng đá hôm nay lệnh SQL. Kết quả của hàm phải là cấu trúc palloc'd của loạiindexAmRoutine, chứa mọi thứ mà mã cốt lõi cần biết để sử dụng phương thức truy cập chỉ kèo chấp bóng đá hôm nay. TheindexAmRoutinestruct, còn được gọi là phương thức truy cậpAPI Struct, bao gồm các trường chỉ định các thuộc tính cố định của phương thức truy cập, chẳng hạn như liệu nó có thể hỗ trợ các chỉ kèo chấp bóng đá hôm nay Multicolumn hay không. Quan trọng hơn, nó chứa các gợi ý để hỗ trợ các chức năng cho phương thức truy cập, thực hiện tất cả các công việc thực sự để truy cập các chỉ kèo chấp bóng đá hôm nay. Các chức năng hỗ trợ này là các hàm C đơn giản và không thể nhìn thấy hoặc có thể gọi được ở cấp SQL. Các chức năng hỗ trợ được mô tả trongPhần 61.2.

Cấu trúcindexAmRoutineđược xác định như vậy:

10159_13120

Để hữu ích, một phương thức truy cập chỉ kèo chấp bóng đá hôm nay cũng phải có một hoặc nhiềuGia đình vận hành13265_1328313286_13300pg_opf Family, PG_OPCLASS, PG_AMOPpg_amproc. Các kèo chấp bóng đá hôm nay này cho phép người lập kế hoạch xác định loại trình độ truy vấn nào có thể được sử dụng với các chỉ kèo chấp bóng đá hôm nay của phương thức truy cập này. Các gia đình và lớp học được mô tả trongPhần 37.16, đó là tài liệu điều kiện tiên quyết để đọc chương này.

Một chỉ kèo chấp bóng đá hôm nay riêng lẻ được xác định bởi Apg_ classkèo chấp bóng đá hôm nay mô tả nó là mối quan hệ vật lý, cộng vớipg_index14477_14979pg_index. Cả hai kèo chấp bóng đá hôm nay nhập danh kèo chấp bóng đá hôm nay này đều có thể được truy cập như một phần củaMối quan hệCấu trúc dữ liệu được truyền cho tất cả các hoạt động trên chỉ kèo chấp bóng đá hôm nay.

Một số trường cờ củaindexAmRoutineCó ý nghĩa không đáng tin cậy. kèo chấp bóng đá hôm nay yêu cầu củaAmcanuniqueđược thảo luận trongPhần 61.5. TheAmcanmulticolFlag khẳng định rằng phương thức truy cập hỗ trợ các chỉ kèo chấp bóng đá hôm nay nhiều cột, trong khiAmoptionalkeykhẳng định rằng nó cho phép quét trong đó không có điều khoản hạn chế có thể lập chỉ kèo chấp bóng đá hôm nay nào được đưa ra cho cột chỉ kèo chấp bóng đá hôm nay đầu tiên. KhiAmcanmulticollà sai,AmoptionalkeyVề cơ bản nói rằng phương thức truy cập có hỗ trợ quét toàn bộ chỉ số mà không có điều khoản hạn chế nào không. Các phương thức truy cập hỗ trợ nhiều cột chỉ kèo chấp bóng đá hôm nayphảiQuét hỗ trợ bỏ qua các hạn chế đối với bất kỳ hoặc tất cả các cột sau lần đầu tiên; Tuy nhiên, chúng được phép yêu cầu một số hạn chế xuất hiện cho cột chỉ kèo chấp bóng đá hôm nay đầu tiên và điều này được báo hiệu bằng cách cài đặtAmoptionalkeySai. Một lý do mà một chỉ kèo chấp bóng đá hôm nay có thể đặtAmoptionalkey16422_16831AmoptionalkeyĐúng phải chỉ kèo chấp bóng đá hôm nay nulls, vì người lập kế hoạch có thể quyết định sử dụng một chỉ kèo chấp bóng đá hôm nay như vậy mà không có khóa quét nào cả. Một hạn chế liên quan là phương thức truy cập chỉ kèo chấp bóng đá hôm nay hỗ trợ nhiều cột chỉ kèo chấp bóng đá hôm nayphảiHỗ trợ lập chỉ kèo chấp bóng đá hôm nay các giá trị null trong các cột sau lần đầu tiên, vì người lập kế hoạch sẽ giả sử chỉ kèo chấp bóng đá hôm nay có thể được sử dụng cho các truy vấn không hạn chế các cột này. Ví dụ: xem xét một chỉ kèo chấp bóng đá hôm nay trên (a, b) và truy vấn vớitrong đó a = 4. Hệ thống sẽ giả sử chỉ kèo chấp bóng đá hôm nay có thể được sử dụng để quét các hàng vớiA = 4, Điều này là sai nếu chỉ kèo chấp bóng đá hôm nay bỏ qua các hàng trong đóBlà null. Tuy nhiên, đó là OK để bỏ qua các hàng trong đó cột được lập chỉ kèo chấp bóng đá hôm nay đầu tiên là null. Phương thức truy cập chỉ kèo chấp bóng đá hôm nay không có chỉ kèo chấp bóng đá hôm nay nulls cũng có thể đặtAmsearchNulls, chỉ ra rằng nó hỗ trợlà nullkhông phải là nullmệnh đề là điều kiện tìm kiếm.

TheAmcanincludecờ cho biết liệu phương thức truy cập có hỗ trợBao gồmkèo chấp bóng đá hôm nay cột, đó là nó có thể lưu trữ (không xử lý) kèo chấp bóng đá hôm nay cột bổ sung ngoài (kèo chấp bóng đá hôm nay) cột chính. kèo chấp bóng đá hôm nay yêu cầu của đoạn trước chỉ áp dụng cho kèo chấp bóng đá hôm nay cột chính. Cụ thể, sự kết hợp củaAmcanmulticol=SaiAmcaninclude=TRUElà hợp lý: Điều đó có nghĩa là chỉ có thể có một cột chính, nhưng cũng có thể được bao gồm (kèo chấp bóng đá hôm nay) cột. Ngoài ra, kèo chấp bóng đá hôm nay cột bao gồm phải được phép là null, độc lập vớiAmoptionalkey.

Gửi hiệu chỉnh

Nếu bạn thấy bất cứ điều gì trong tài liệu không chính xác, không phù hợp Kinh nghiệm của bạn với tính năng cụ thể hoặc yêu cầu làm rõ thêm, Vui lòng sử dụngMẫu nàyĐể báo cáo vấn đề tài liệu.