F.15. file_fdw - 서버 파일 시스템의 토토 커뮤니티 파일에 액세스#

thefile_fdw모듈은 외국 토토 커뮤니티 래퍼를 제공합니다file_fdw, 서버 파일 시스템의 토토 커뮤니티 파일에 액세스하거나 서버에서 프로그램을 실행하고 출력을 읽는 데 사용할 수 있습니다. 토토 커뮤니티 파일 또는 프로그램 출력은를 읽을 수있는 형식이어야합니다.복사; 보다COPY자세한 내용. 데이터 파일에 대한 액세스는 현재 읽기 전용입니다.

이 래퍼를 사용하여 생성 된 외국 테이블에는 다음 옵션이 있습니다.

filename

읽을 파일을 지정합니다. 상대 경로는 토토 커뮤니티 디렉토리와 관련이 있습니다.filename또는프로그램지정되어야하지만 둘 다를 지정하지 않아야합니다.

프로그램

실행될 명령을 지정합니다. 이 명령의 표준 출력은 마치 마치 읽습니다프로그램에서 복사사용되었습니다. 어느 하나프로그램또는filename지정되어야하지만 둘 다를 지정하지 않아야합니다.

형식

데이터 형식을 지정합니다.COPY's형식옵션.

헤더

데이터에 헤더 라인이 있는지 여부를 지정합니다.COPY's헤더옵션.

Delimiter

토토 커뮤니티 구분 기자 문자를 지정합니다.COPY'sDelimiter옵션.

QUOTE

과 같은 토토 커뮤니티 견적 문자를 지정합니다COPY'sQUOTE옵션.

탈출

와 같은 데이터 탈출 문자를 지정합니다COPY's탈출옵션.

null

데이터 null 문자열을 지정합니다.COPY'snull옵션.

인코딩

데이터 인코딩을 지정합니다.COPY's인코딩옵션.

COPY와 같은 옵션이 허용됩니다.헤더해당 값없이 지정하려면 외국 테이블 옵션 구문에는 모든 경우에 값이 있어야합니다. 활성화하려면COPY일반적으로 값없이 작성된 옵션은 모든 옵션이 부울이므로 값을 전달할 수 있습니다.

이 래퍼를 사용하여 생성 된 외국 테이블의 열에 다음 옵션이 있습니다.

force_not_null

이것은 부울 옵션입니다. 사실이라면, 열의 값이 널 문자열과 일치하지 않음을 지정합니다 (즉, 테이블 레벨null옵션). 이것은 열을 나열하는 것과 동일한 효과가 있습니다COPY'sforce_not_null옵션.

Force_null

이것은 부울 옵션입니다. 참이면 널 문자열과 일치하는 열의 값이로 반환됩니다.null값이 인용 되더라도. 이 옵션이 없으면 NULL 문자열과 일치하는 인용되지 않은 값만로 반환됩니다.null. 이것은 열을 나열하는 것과 동일한 효과가 있습니다COPY'sForce_null옵션.

COPY'sForce_quote옵션은 현재 지원되지 않습니다file_fdw.

이 옵션은 옵션이 아닌 외국 테이블 또는 그 열에 대해서만 지정할 수 있습니다file_fdw외국 데이터 포장지 또는 래퍼를 사용한 서버 또는 사용자 매핑 옵션에서

테이블 레벨 옵션 변경 변경 슈퍼업자이거나 역할의 권한이 있어야PG_READ_SERVER_FILES(파일 이름 사용) 또는 역할pg_execute_server_program(프로그램을 사용하려면) 보안상의 이유로 : 특정 사용자 만 읽거나 실행되는 프로그램을 제어 할 수 있어야합니다. 원칙적으로 일반 사용자는 다른 옵션을 변경할 수 있지만 현재 지원되지는 않습니다.

지정할 때프로그램옵션, 옵션 문자열은 쉘에 의해 실행됩니다. 신뢰할 수없는 소스에서 오는 명령에 인수를 전달 해야하는 경우 쉘에 특별한 의미가있는 문자를 벗기거나 탈출해야합니다.

사용을 사용하는 외국 테이블의 경우file_fdw, 설명실행할 파일의 이름을 표시하거나 실행할 프로그램을 표시합니다. 파일의 경우비용 끄기지정되어 있으며 파일 크기 (바이트)도 표시됩니다.

예제 F.1. PostgreSQL CSV 로그에 대한 외국 테이블 만들기

명백한 용도 중 하나file_fdwPostgreSQL 활동 로그를 쿼리 테이블로 사용할 수 있도록하는 것입니다. 이렇게하려면 먼저CSV 파일에 로그,여기서 우리가 전화 할 것입니다pglog.csv. 첫째, installfile_fdw확장자 :

Extension Create File_FDW;

그런 다음 외국 서버를 만듭니다 :

서버 생성 PGLOG 이외의 토토 커뮤니티 래퍼 파일 _fdw;

이제 외국 토토 커뮤니티 테이블을 만들 준비가되었습니다. 사용 사용외국 테이블 만들기명령, 표, CSV 파일 이름 및 그 형식의 열을 정의해야합니다 :

외국 테이블 생성 pglog (

그게 다야 - 이제 로그를 직접 쿼리 할 수 ​​있습니다. 물론 생산에서 로그 회전을 처리 할 수있는 방법을 정의해야합니다.


예제 F.2. 열에 옵션이있는 외국 테이블 작성

설정하려면Force_null열의 옵션 사용옵션키워드.

외국 테이블 필름 만들기 (

정정 제출

문서에 올바르지 않은 내용이 있으면 일치하지 않습니다.이 양식문서 문제를보고하려면