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 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 7.3 / 7.2
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 các phiên bản được hỗ trợ khác được liệt kê ở trên thay thế.

22.2. Cài đặt tỷ lệ kèo bóng đá

Một tỷ lệ kèo bóng đá phải là10253_10266vào mỗi cơ sở dữ liệu nơi nó được đã sử dụng. Nhưng các tỷ lệ kèo bóng đá được cài đặt trong Template1 cơ sở dữ liệu được tự động có sẵn trong tất cả các cơ sở dữ liệu. Vì vậy, quản trị viên cơ sở dữ liệu có thể quyết định cái nào Ngôn ngữ có sẵn trong đó cơ sở dữ liệu và có thể tạo ra một số ngôn ngữ có sẵn theo mặc định nếu anh ấy chọn.

Đối với các tỷ lệ kèo bóng đá ngữ được cung cấp với phân phối tiêu chuẩn, script shellcreatelangcó thể được sử dụng Thay vì thực hiện các chi tiết bằng tay. Ví dụ, đến tỷ lệ kèo bóng đáPL/PGSQLvào Cơ sở dữ liệu Template1, sử dụng

createlang plpgsql template1

Quy trình thủ công được mô tả dưới đây chỉ được khuyến nghị cho cài đặt các tỷ lệ kèo bóng đá ngữ tùy chỉnhcreatelangkhông biết về.

Cài đặt tỷ lệ kèo bóng đá thủ công

11230_11353

  1. Đối tượng được chia sẻ cho người xử lý tỷ lệ kèo bóng đá ngữ phải được biên dịch và cài đặt vào một thư viện thích hợp Thư mục. Điều này hoạt động theo cách tương tự như xây dựng và Cài đặt các mô-đun với các chức năng C do người dùng định nghĩa thông thường làm; nhìn thấyPhần 12.5.7.

  2. Người xử lý phải được khai báo với lệnh

    Tạo chức năngHandler_Function_Name()
        Trả về mờ đục như
        'Path-to-Shared-Object' tỷ lệ kèo bóng đá ngữ C;

    Loại trả về đặc biệt củaOpaqueNói với cơ sở dữ liệu rằng chức năng này không trả về một của xác địnhSQLDữ liệu Các loại và không thể sử dụng trực tiếp trongSQLcâu lệnh.

  3. PL phải được khai báo với lệnh

    Tạo [Trusted] [Thủ tục] tỷ lệ kèo bóng đá ngữtên tỷ lệ kèo bóng đá ngữHandlerHandler_function_name;

    Từ khóa tùy chọnTrustedCho biết người dùng cơ sở dữ liệu thông thường không có Đặc quyền Superuser nên được phép sử dụng tỷ lệ kèo bóng đá ngữ này Để tạo các chức năng và quy trình kích hoạt. Kể từ pl Các chức năng được thực thi bên trong máy chủ cơ sở dữ liệu,TrustedCờ chỉ nên được đưa ra Đối với các tỷ lệ kèo bóng đá ngữ không cho phép truy cập vào máy chủ cơ sở dữ liệu nội bộ hoặc hệ thống tệp. tỷ lệ kèo bóng đá ngữPL/PGSQL, PL/TCL, PL/PerlPL/Pythonđược biết là đáng tin cậy; các tỷ lệ kèo bóng đá ngữPL/TCLUPL/Perluđược thiết kế cho cung cấp chức năng không giới hạn nênkhôngđược đánh dấu đáng tin cậy.

13851_13866PostgreSQLtỷ lệ kèo bóng đá, trình xử lý choPL/PGSQLtỷ lệ kèo bóng đá ngữ được xây dựng và cài đặt vào"Thư viện"Thư mục. Nếu như Hỗ trợ TCL/TK được cấu hình, Trình xử lý cho PL/TCL và PL/TCLU cũng được xây dựng và tỷ lệ kèo bóng đá ở cùng một vị trí. Tương tự như vậy, trình xử lý PL/Perl và PL/Perlu được xây dựng và được tỷ lệ kèo bóng đá nếu hỗ trợ Perl được cấu hình và PL/Python là được tỷ lệ kèo bóng đá nếu hỗ trợ Python được cấu hình. ThecreatelangScript Automates​​Bước 2Bước 3được mô tả bên trên.

Ví dụ 22-1. tỷ lệ kèo bóng đá thủ côngPL/PGSQL

Lệnh sau đây cho máy chủ cơ sở dữ liệu ở đâu Tìm đối tượng được chia sẻ choPL/PGSQLTrình xử lý cuộc gọi của tỷ lệ kèo bóng đá ngữ chức năng.

Tạo chức năng plpgsql_call_handler () trả về mờ đục dưới dạng
    '$ libdir/plpgsql' tỷ lệ kèo bóng đá ngữ c;

lệnh

Tạo tỷ lệ kèo bóng đá đáng tin cậy PLPGSQL
    Handler plpgsql_call_handler;

Sau đó xác định rằng trình xử lý cuộc gọi được khai báo trước đó chức năng nên được gọi cho các chức năng và quy trình kích hoạt trong đó thuộc tính tỷ lệ kèo bóng đá ngữ làPLPGSQL.