file_fdw

The file_fdw module provides the external data wrapper file_fdw, which can be used to access data files in the file system of a server. The format of the data files must be readable by the COPY FROM command. For details, see COPY. file_fdw is only used to access readable data files, but cannot write data to the data files.

By default, the file_fdw is compiled in openGauss. During database initialization, the plug-in is created in the pg_catalog schema.

The server and foreign table corresponding to file_fdw can be created only by the initial user of the database or the O&M administrator who enables the O&M mode.

When you create a foreign table using file_fdw, you can add the following options:

  • filename

    File to be read. This parameter is mandatory and must be an absolute path.

  • format

    File format of the remote server, which is the same as the FORMAT option in the COPY statement. The value can be text, csv, or binary.

  • header

    Whether the specified file has a header, which is the same as the HEADER option of the COPY statement.

  • delimiter

    File delimiter, which is the same as the DELIMITER option of the COPY statement.

  • quote

    Quote character of a file, which is the same as the QUOTE option of the COPY statement.

  • escape

    Escape character of a file, which is the same as the ESCAPE option of the COPY statement.

  • null

    Null string of a file, which is the same as the NULL option of the COPY statement.

  • encoding

    Encoding of a file, which is the same as the ENCODING option of the COPY statement.

  • force_not_null

    File-level null option, which is a Boolean option. If it is true, the value of the declared field cannot be an empty string. This option is the same as the FORCE_NOT_NULL option of the COPY statement.

NOTE:

  • file_fdw does not support the OIDS and FORCE_QUOTE options of the COPY statement.
  • These options can only be declared for a foreign table or the columns of the foreign table, not for the file_fdw itself, nor for the server or user mapping that uses file_fdw.
  • To modify table-level options, you must obtain the system administrator role permissions. For security reasons, only the system administrator can determine the files to be read.
  • For an external table that uses file_fdw, EXPLAIN displays the name and size (in bytes) of the file to be read. If the keyword COSTS OFF is specified, the file size is not displayed.

Using file_fdw

  • To create a server object, use CREATE SERVER.

  • To create a user mapping, use CREATE USER MAPPING.

  • To create a foreign table, use CREATE FOREIGN TABLE.

    NOTE:

    • The structure of the foreign table must be consistent with the data in the specified file.
    • When a foreign table is queried, no write operation is allowed.
  • To drop a foreign table, use DROP FOREIGN TABLE.

  • To drop a user mapping, use DROP USER MAPPING.

  • To drop a server object, use DROP SERVER.

Precautions

  • To use file_fdw, you need to specify the file to be read. Prepare the file and grant the read permission on the file for the database to access the file.
  • DROP EXTENSION file_fdw is not supported.
Feedback
编组 3备份
    openGauss 2024-10-03 04:45:44
    cancel