使用 DBMS_CLOUD.EXPORT_DATA 将数据导出到目录

使用 DBMS_CLOUD.EXPORT_DATA 将文件导出到目录。
导出文件的目录可以位于 Autonomous Database 文件系统或附加的外部文件系统中。有关详细信息,请参阅以下页面:

将数据作为 CSV 导出到目录

显示通过指定查询将表数据从 Autonomous Database 导出为 CSV 数据的目录的步骤。

  1. 连接到 Autonomous Database 实例。

    有关详细信息,请参阅连接到 Autonomous Database

  2. 创建目录。

    例如:

    CREATE DIRECTORY export_dir AS 'export_dir';
    有关更多信息,请参见创建目录
  3. 运行 DBMS_CLOUD.EXPORT_DATA 并将 format 参数 type 指定为值 json,以将结果作为 CSV 文件导出到目录。将输出发送到目录时不要包括 credential 参数。
    BEGIN
     DBMS_CLOUD.EXPORT_DATA(
        file_uri_list => 'export_dir:sales.csv',
        format => JSON_OBJECT('type' value 'csv'),
        query => 'SELECT * FROM sales'
     );
    END;
    /
    

    当记录分隔符包括转义符(如 \r\n 或 \t)时,将记录分隔符用双引号括起来。例如,要使用记录分隔符 \r\n,请用双引号将值括起来:"\r\n"

    BEGIN
      DBMS_CLOUD.EXPORT_DATA(
        file_uri_list => 'export_dir:sales.csv',
        query => 'SELECT * FROM sales',
        format => JSON_OBJECT('type' value 'json', 'recorddelimiter' value '"\r\n"' format json));
    END;
    /

    当目录名称用双引号括起来时,目录名称区分大小写。例如:

    BEGIN
     DBMS_CLOUD.EXPORT_DATA(
        file_uri_list => '"export_dir":sales.csv',
        format => JSON_OBJECT('type' value 'csv'),
        query => 'SELECT * FROM sales'
     );
    END;
    /
    

    有关参数的详细信息,请参见EXPORT_DATA Procedure

    有关可用于 DBMS_CLOUD.EXPORT_DATA 的可用 format 参数的详细信息,请参见 DBMS_CLOUD Package Format Options for EXPORT_DATA

    参数包括:

    • file_uri_list:是导出文件的逗号分隔列表。file_uri_list 不支持使用通配符和替代字符。

    • format:指定所需的 type 参数。有效值为 jsonxmlcsv

    • query:指定 SELECT 语句,以便仅导出所需的数据。查询确定转储文件的内容。

    注意:

    DBMS_CLOUD.EXPORT_DATA 过程创建您在 file_uri_list 中指定的转储文件。该过程不会覆盖文件。如果 file_uri_list 中存在转储文件,则 DBMS_CLOUD.EXPORT_DATA 将生成另一个具有唯一名称的文件。DBMS_CLOUD.EXPORT_DATA 不会创建目录。

    有关参数的详细信息,请参见EXPORT_DATA Procedure

使用 DBMS_CLOUD.EXPORT_DATA 导出时的说明:

  • 如果需要,您提供的 query 参数可以是高级查询,例如包含联接或子查询的查询。

  • 使用 compression 选项指定 format 参数以压缩输出文件。

将数据作为 JSON 导出为目录

显示通过指定查询将表数据从 Autonomous Database 导出为 JSON 数据的步骤。

  1. 连接到 Autonomous Database 实例。

    有关详细信息,请参阅连接到 Autonomous Database

  2. 创建目录。

    例如:

    CREATE DIRECTORY export_dir AS 'export_dir';
    有关更多信息,请参见创建目录
  3. 运行 DBMS_CLOUD.EXPORT_DATA 并将 format 参数 type 指定为值 json,以将结果作为 JSON 文件导出到目录。将输出发送到目录时不要包括 credential 参数。
    BEGIN
     DBMS_CLOUD.EXPORT_DATA(
        file_uri_list => 'export_dir:sales.dmp',
        format => json_object('type' value 'json'),
        query => 'SELECT * FROM sales'
     );
    END;
    /
    

    当记录分隔符包括转义符(如 \r\n 或 \t)时,将记录分隔符用双引号括起来。例如,要使用记录分隔符 \r\n,请用双引号将值括起来:"\r\n"

    BEGIN
      DBMS_CLOUD.EXPORT_DATA(
        file_uri_list => 'export_dir:sales.dmp',
        query => 'SELECT * FROM sales',
        format => JSON_OBJECT('type' value 'json', 'recorddelimiter' value '"\r\n"' format json));
    END;
    /

    当目录名称用双引号括起来时,目录名称区分大小写。例如:

    BEGIN
     DBMS_CLOUD.EXPORT_DATA(
        file_uri_list => '"export_dir":sales.dmp',
        format => json_object('type' value 'json'),
        query => 'SELECT * FROM sales'
     );
    END;
    /
    

    有关参数的详细信息,请参见EXPORT_DATA Procedure

    有关可用于 DBMS_CLOUD.EXPORT_DATA 的可用 format 参数的详细信息,请参见 DBMS_CLOUD Package Format Options for EXPORT_DATA

    参数包括:

    • file_uri_list:是导出文件的逗号分隔列表。file_uri_list 不支持使用通配符和替代字符。

    • format:指定所需的 type 参数。有效值为 jsonxmlcsv

    • query:指定 SELECT 语句,以便仅导出所需的数据。查询确定转储文件的内容。

    注意:

    DBMS_CLOUD.EXPORT_DATA 过程创建您在 file_uri_list 中指定的转储文件。该过程不会覆盖文件。如果 file_uri_list 中存在转储文件,则 DBMS_CLOUD.EXPORT_DATA 将生成另一个具有唯一名称的文件。DBMS_CLOUD.EXPORT_DATA 不会创建目录。

    有关参数的详细信息,请参见EXPORT_DATA Procedure

使用 DBMS_CLOUD.EXPORT_DATA 导出时的说明:

  • 如果需要,您提供的 query 参数可以是高级查询,例如包含联接或子查询的查询。

  • 使用 compression 选项指定 format 参数以压缩输出文件。

将数据作为参数导出到目录

显示通过指定查询将表数据从 Autonomous Database 导出到作为 Parquet 数据的目录的步骤。

  1. 连接到 Autonomous Database 实例。

    有关详细信息,请参阅连接到 Autonomous Database

  2. 创建目录。

    例如:

    CREATE DIRECTORY export_dir AS 'export_dir';
    有关更多信息,请参见创建目录
  3. 运行 DBMS_CLOUD.EXPORT_DATA 并将 format 参数 type 指定为值 json,以将结果作为 Parquet 文件导出到目录。将输出发送到目录时不要包括 credential 参数。
    BEGIN
     DBMS_CLOUD.EXPORT_DATA(
        file_uri_list => 'export_dir:sales.parquet',
        format => JSON_OBJECT('type' value 'parquet'),
        query => 'SELECT * FROM sales'
     );
    END;
    /
    

    当目录名称用双引号括起来时,目录名称区分大小写。例如:

    BEGIN
     DBMS_CLOUD.EXPORT_DATA(
        file_uri_list => '"export_dir":sales.parquet',
        format => JSON_OBJECT('type' value 'parquet'),
        query => 'SELECT * FROM sales'
     );
    END;
    /
    

    有关参数的详细信息,请参见EXPORT_DATA Procedure

    有关可用于 DBMS_CLOUD.EXPORT_DATA 的可用 format 参数的详细信息,请参见 DBMS_CLOUD Package Format Options for EXPORT_DATA

    参数包括:

    • file_uri_list:是导出文件的逗号分隔列表。file_uri_list 不支持使用通配符和替代字符。

    • format:指定所需的 type 参数。有效值为 datapumpjsonxmlcsvparquet,还可以选择定义您可以使用 ORACLE_DATAPUMP 访问驱动程序为导出指定的选项。

    • query:指定 SELECT 语句,以便仅导出所需的数据。查询确定转储文件的内容。

    有关参数的详细信息,请参见EXPORT_DATA Procedure

使用 DBMS_CLOUD.EXPORT_DATA 导出时的说明:

  • 如果需要,您提供的 query 参数可以是高级查询,例如包含联接或子查询的查询。

  • 使用 compression 选项指定 format 参数以压缩输出文件。

  • 有关 Oracle 类型到参数类型的映射的详细信息,请参见 DBMS_CLOUD Package Oracle Data Type to Parquet Mapping

    不支持以下类型,或者它们对使用 DBMS_CLOUD.EXPORT_DATA 导出 Parquet 的支持存在限制:

    Oracle 类型 注:

    BFILE

    不支持

    BLOB

    不支持

    DATE

    支持的限制如下:DATE 格式仅支持日期、月份和年份。不支持小时、分钟和秒。

    有关将 DATE 导出到 Parquet 的 NLS 格式限制的详细信息,请参见 DBMS_CLOUD Package Oracle Data Type to Parquet Mapping

    INTERVAL DAY TO SECOND

    支持并在内部被视为字符串

    INTERVAL YEAR TO MONTH

    支持并在内部被视为字符串

    LONG

    不支持

    LONG RAW

    不支持

    NUMBER

    支持,但存在以下限制:

    • 最大精度可以为 38,小数位数可以小于精度。
    • 如果没有为列 NUMBER 类型提供精度和小数位数,则默认情况下使用精度 38 和小数位数 20。
    • NUMBER 类型不支持负比例。

    Object Types

    不支持

    TIMESTAMP

    支持,但存在以下限制:

    • 如果有多个列具有不同的精度,则采用最高的精度。
    • TIMESTAMP WITH TIME ZONE Oracle 数据类型将仅使用时间戳。

    有关将 TIMESTAMP 导出到 Parquet 的 NLS 格式限制的详细信息,请参见 DBMS_CLOUD Package Oracle Data Type to Parquet Mapping

将数据作为 XML 导出到目录

显示通过指定查询将表数据从 Autonomous Database 导出为 XML 数据的步骤。

  1. 连接到 Autonomous Database 实例。

    有关详细信息,请参阅连接到 Autonomous Database

  2. 创建目录。

    例如:

    CREATE DIRECTORY export_dir AS 'export_dir';
    有关更多信息,请参见创建目录
  3. 运行 DBMS_CLOUD.EXPORT_DATA 并将 format 参数 type 指定为值 json,以将结果作为 XML 文件导出到目录。将输出发送到目录时不要包括 credential 参数。
    BEGIN
     DBMS_CLOUD.EXPORT_DATA(
        file_uri_list => 'export_dir:sales.csv',
        format => JSON_OBJECT('type' value 'csv'),
        query => 'SELECT * FROM sales'
     );
    END;
    /
    

    当目录名称用双引号括起来时,目录名称区分大小写。例如:

    BEGIN
     DBMS_CLOUD.EXPORT_DATA(
        file_uri_list => '"export_dir":sales.xml',
        format => JSON_OBJECT('type' value 'xml'),
        query => 'SELECT * FROM sales'
     );
    END;
    /
    

    有关参数的详细信息,请参见EXPORT_DATA Procedure

    有关可用于 DBMS_CLOUD.EXPORT_DATA 的可用 format 参数的详细信息,请参见 DBMS_CLOUD Package Format Options for EXPORT_DATA

    参数包括:

    • file_uri_list:是导出文件的逗号分隔列表。file_uri_list 不支持使用通配符和替代字符。

    • format:指定所需的 type 参数。有效值为 jsonxmlcsv

    • query:指定 SELECT 语句,以便仅导出所需的数据。查询确定转储文件的内容。

    注意:

    DBMS_CLOUD.EXPORT_DATA 过程创建您在 file_uri_list 中指定的转储文件。该过程不会覆盖文件。如果 file_uri_list 中存在转储文件,则 DBMS_CLOUD.EXPORT_DATA 将生成另一个具有唯一名称的文件。DBMS_CLOUD.EXPORT_DATA 不会创建目录。

    有关参数的详细信息,请参见EXPORT_DATA Procedure

使用 DBMS_CLOUD.EXPORT_DATA 导出时的说明:

  • 如果需要,您提供的 query 参数可以是高级查询,例如包含联接或子查询的查询。

  • 使用 compression 选项指定 format 参数以压缩输出文件。