이 문서는 지원되지 않는 버전의 PostgreSQL 용입니다.
당신은에 대해 같은 페이지를 볼 수 있습니다PostgreSQL : 문서 : 17 : F.15. file_fdw - 서버 파일 시스템의 토토 커뮤니티 파일에 액세스버전 또는 위에 나열된 다른 지원되는 버전 중 하나입니다.

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인코딩옵션.

on_error

열의 입력 값을 토토 핫 유형으로 변환하는 오류가 발생할 때 작동하는 방법을 지정합니다.COPY'son_error옵션.

Reject_limit

열의 입력 값을 토토 핫 유형으로 변환하는 동안 허용되는 최대 오류 수를 지정합니다.COPY'sReject_limit옵션.

log_verbosity

|file_fdw,COPY'slog_verbosity옵션.

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

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

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 File_FDW 생성;

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

서버 생성 PGLOG 이외의 토토 핫 포장 파일 _fdw;

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

외국 테이블 생성 pglog (

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


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

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

외국 테이블 필름 만들기 (