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

F.16. FILE_FDW - Truy cập các kèo bóng đá pháp trong hệ thống tệp của máy chủ#

Thefile_fdwMô-đun cung cấp trình bao bọc dữ kèo bóng đá pháp nước ngoàiFILE_FDW, có thể được sử dụng để truy cập các kèo bóng đá pháp trong hệ thống tệp của máy chủ hoặc để thực hiện các chương trình trên máy chủ và đọc đầu ra của chúng. kèo bóng đá pháp hoặc đầu ra chương trình phải ở định dạng có thể được đọc bởiSao chép từ; nhìn thấyCopyĐể biết chi tiết. Truy cập vào các kèo bóng đá pháp hiện chỉ đọc.

Một bảng nước ngoài được tạo bằng cách sử dụng trình bao bọc này có thể có kèo bóng đá pháp tùy chọn sau:

FileName

Chỉ định kèo bóng đá pháp sẽ được đọc. Các đường dẫn tương đối có liên quan đến thư mục dữ liệu.FileNamehoặcchương trìnhphải được chỉ định, nhưng không phải cả hai.

Chương trình

Chỉ định lệnh sẽ được thực thi. Đầu ra tiêu chuẩn của lệnh này sẽ được đọc như thểSao chép từ chương trìnhđã được sử dụng. HoặcChương trìnhhoặcFileNamephải được chỉ định, nhưng không phải cả hai.

Định dạng

Chỉ định định dạng dữ kèo bóng đá pháp, giống nhưCopy'sĐịnh dạngTùy chọn.

tiêu đề

Chỉ định xem dữ kèo bóng đá pháp có đường tiêu đề hay không, giống nhưCopy'stiêu đềTùy chọn.

Delimiter

Chỉ định ký tự phân cách dữ kèo bóng đá pháp, giống nhưCopy'sDelimiterTùy chọn.

QUOTE

Chỉ định ký tự trích dẫn dữ kèo bóng đá pháp, giống nhưCopy'sQUOTETùy chọn.

Escape

Chỉ định ký tự thoát dữ kèo bóng đá pháp, giống nhưCopy'sEscapeTùy chọn.

null

Chỉ định chuỗi null dữ kèo bóng đá pháp, giống nhưCopy'snullTùy chọn.

mã hóa

Chỉ định mã hóa dữ kèo bóng đá pháp, giống nhưCopy'smã hóaTùy chọn.

Lưu ý rằng trong khisao chépCho phép kèo bóng đá pháp tùy chọn nhưtiêu đềĐể được chỉ định mà không có giá trị tương ứng, cú pháp tùy chọn Bàn nước ngoài yêu cầu giá trị phải có trong mọi trường hợp. Để kích hoạtCopyTùy chọn thường được viết mà không có giá trị, bạn có thể vượt qua giá trị true, vì tất cả kèo bóng đá pháp tùy chọn như vậy là booleans.

Một cột của một bảng nước ngoài được tạo bằng cách sử dụng trình bao bọc này có thể có kèo bóng đá pháp tùy chọn sau:

Force_not_Null

Đây là một tùy chọn Boolean. Nếu đúng, nó chỉ định rằng kèo bóng đá pháp giá trị của cột không được khớp với chuỗi null (nghĩa là mức bảngnullTùy chọn). Điều này có tác dụng tương tự như liệt kê cột trongCopy'SForce_not_NullTùy chọn.

Force_Null

Đây là một tùy chọn Boolean. Nếu đúng, nó chỉ định rằng kèo bóng đá pháp giá trị của cột khớp với chuỗi null được trả về dưới dạngnullNgay cả khi giá trị được trích dẫn. Không có tùy chọn này, chỉ có kèo bóng đá pháp giá trị chưa được trình bày khớp với chuỗi null được trả về dưới dạngnull. Điều này có tác dụng tương tự như liệt kê cột trongCopy'sForce_NullTùy chọn.

Copy'sForce_quoteTùy chọn hiện không được hỗ trợ bởiFILE_FDW.

kèo bóng đá pháp tùy chọn này chỉ có thể được chỉ định cho một bảng nước ngoài hoặc kèo bóng đá pháp cột của nó, không phải trong kèo bóng đá pháp tùy chọn củaFILE_FDWtrình bao bọc dữ liệu nước ngoài, cũng như trong kèo bóng đá pháp tùy chọn của máy chủ hoặc ánh xạ người dùng bằng cách sử dụng trình bao bọc.

Thay đổi kèo bóng đá pháp tùy chọn cấp bảng yêu cầu là một siêu người dùng hoặc có kèo bóng đá pháp đặc quyền của vai tròPG_READ_SERVER_FILES(để sử dụng tên kèo bóng đá pháp) hoặc vai tròPG_EXECUTE_SERVER_PROGRAM(Để sử dụng một chương trình), vì lý do bảo mật: Chỉ một số người dùng mới có thể kiểm soát kèo bóng đá pháp nào được đọc hoặc chương trình nào được chạy. Về nguyên tắc, người dùng chính quy có thể được phép thay đổi các tùy chọn khác, nhưng điều đó không được hỗ trợ hiện tại.

Khi chỉ địnhChương trìnhTùy chọn, hãy nhớ rằng chuỗi tùy chọn được thực hiện bởi shell. Nếu bạn cần chuyển bất kỳ đối số nào cho lệnh đến từ một nguồn không đáng tin cậy, bạn phải cẩn thận để tước hoặc thoát khỏi bất kỳ ký tự nào có thể có ý nghĩa đặc biệt đối với vỏ.

Đối với một bảng nước ngoài bằng cách sử dụngfile_fdw, Giải thíchHiển thị tên của kèo bóng đá pháp sẽ được đọc hoặc chương trình sẽ được chạy. Cho một kèo bóng đá pháp, trừ khiChi phí tắtđược chỉ định, kích thước kèo bóng đá pháp (tính bằng byte) cũng được hiển thị.

Ví dụ F.1. Tạo một bảng nước ngoài cho nhật ký CSV PostgreSQL

Một trong những cách sử dụng rõ ràng choFILE_FDWlà để làm cho nhật ký hoạt động PostgreSQL có sẵn dưới dạng bảng để truy vấn. Để làm điều này, trước tiên bạn phải làĐăng nhập vào kèo bóng đá pháp CSV,Ở đây chúng ta sẽ gọipglog.csv. Đầu tiên, cài đặtFILE_FDWnhư một phần mở rộng:

Tạo tiện ích mở rộng FILE_FDW;

Sau đó tạo một máy chủ nước ngoài:

16846_16900

Bây giờ bạn đã sẵn sàng tạo bảng dữ kèo bóng đá pháp nước ngoài. Sử dụngTạo bảng nước ngoàiLệnh, bạn sẽ cần xác định các cột cho bảng, tên kèo bóng đá pháp CSV và định dạng của nó:

Tạo pglog bảng nước ngoài (

Đó là nó - bây giờ bạn có thể truy vấn nhật ký của mình trực tiếp. Trong sản xuất, tất nhiên, bạn sẽ cần xác định một số cách để xử lý vòng quay nhật ký.


Gửi hiệu chỉnh

Nếu bạn thấy bất cứ điều gì trong tài kèo bóng đá pháp không chính xác, không khớpMẫu nàyĐể báo cáo vấn đề tài kèo bóng đá pháp.