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 / 8.1 / 8.0 / 7.4 / 7.3
Tài tỷ lệ kèo bóng đá 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ế.

40.3. tỷ lệ kèo bóng đá

Mô -đun ngôn ngữ PL/Python tự động nhập một Python Mô -đun được gọi làplpy. Các chức năng và hằng số trong mô -đun này có sẵn cho bạn trong mã Python BẰNGplpy.foo. Hiện tạiplpythực hiện các chức năngplpy.debug (msg), plpy.log (msg), plpy.info (msg), plpy.notice (MSG), plpy.warning (msg), plpy.error (msg)plpy.fatal (msg). plpy.errorplpy.fatalthực sự nâng một con trăn ngoại lệ mà, nếu không bị bắt, tuyên tỷ lệ kèo bóng đáền đến cuộc gọi tỷ lệ kèo bóng đá vấn, khiến giao dịch hiện tại hoặc trừ bị hủy bỏ.nâng plpy.error (msg)Nâng cao plpy.fatal (MSG)là tương đương với gọiplpy.errorplpy.fatal, tương ứng. Các Các chức năng khác chỉ tạo ra các thông điệp ưu tiên khác nhau cấp độ. tỷ lệ kèo bóng đá các thông điệp của một ưu tiên cụ thể có được báo cáo cho máy khách, được ghi vào nhật ký máy chủ hoặc cả hai đều được điều khiển bởi Thelog_min_messagesclient_min_messagesBiến cấu hình. Nhìn thấyChương 17Để biết thêm thông tin.

Ngoài ra,plpyMô -đun cung cấp hai chức năng được gọi làthực thiChuẩn bị. Gọiplpy.executevới chuỗi truy vấn và Đối số giới hạn tùy chọn khiến truy vấn được chạy và kết quả sẽ được trả về trong một đối tượng kết quả. Đối tượng kết quả mô phỏng một danh sách hoặc đối tượng từ điển. Đối tượng kết quả có thể là được tỷ lệ kèo bóng đá bởi số hàng và tên cột. Nó có những cái này bổ sung Phương pháp:NROWStrả về Số lượng hàng được trả về bởi tỷ lệ kèo bóng đá vấn vàtrạng tháiđó làspi_execute ()Giá trị trả về. Đối tượng kết quả có thể được sửa đổi.

Ví dụ,

RV = plpy.execute ("Chọn * từ my_table", 5)

Trả về tối đa 5 hàng từmy_table. Nếu nhưmy_tablecó cộtmy_column, nó sẽ được tỷ lệ kèo bóng đá dưới dạng

foo = rv [i] ["my_column"]

Hàm thứ hai,plpy.prepare, Chuẩn bị Kế hoạch thực hiện cho một tỷ lệ kèo bóng đá vấn. Nó được gọi với một chuỗi tỷ lệ kèo bóng đá vấn và một danh sách các loại tham số, nếu bạn có tham chiếu tham số trong tỷ lệ kèo bóng đá vấn. Ví dụ:

plan = plpy.prepare ("chọn last_name từ my_users trong đó first_name = $ 1", ["văn bản"])

Textlà loại biến bạn sẽ được tỷ lệ kèo bóng đáền cho$ 1. Sau khi chuẩn bị một câu lệnh, bạn sử dụng chức năngplpy.executeĐể chạy nó:

rv = plpy.execute (kế hoạch, ["name"], 5)

Đối số thứ ba là giới hạn và là tùy chọn.

Khi bạn chuẩn bị kế hoạch bằng mô -đun PL/Python, nó tự động lưu. Đọc tài tỷ lệ kèo bóng đá SPI (Chương 41) Để biết mô tả về ý nghĩa của điều này. Để sử dụng hiệu quả điều này trên các chức năng, gọi một Cần sử dụng một trong các từ điển lưu trữ liên tụcSDhoặcGD(xemPhần 40.1). Ví dụ:

Tạo chức năng sử dụng đã sử dụng)
    Nếu sd.has_key ("kế hoạch"):
        kế hoạch = sd ["kế hoạch"]
    khác:
        Plan = plpy.prepare ("Chọn 1")
        SD ["Kế hoạch"] = Kế hoạch
    # phần còn lại của chức năng
$$ ngôn ngữ plpythonu;