Carga de datos o consulta de archivos de un directorio

Puede utilizar los procedimientos DBMS_CLOUD para cargar datos de archivos en un directorio, incluidos los directorios creados en sistemas de archivos de red conectados. También puede utilizar estos procedimientos para crear tablas externas que puede utilizar para consultar datos.

Los siguientes procedimientos DBMS_CLOUD admiten la carga de datos en la base de datos desde un directorio:

  • DBMS_CLOUD.COPY_COLLECTION
  • DBMS_CLOUD.COPY_DATA

Además, los siguientes procedimientos DBMS_CLOUD admiten la creación de tablas externas a partir de datos en archivos de un directorio.

  • DBMS_CLOUD.CREATE_EXTERNAL_PART_TABLE
  • DBMS_CLOUD.CREATE_EXTERNAL_TABLE
  • DBMS_CLOUD.CREATE_HYBRID_PART_TABLE

Según el procedimiento, utilice el parámetro file_uri_list o el parámetro partitioning_clause para especificar archivos en uno o más directorios.

Para cargar datos de un directorio, no necesita incluir el parámetro credential_name, pero necesita privilegios de objeto READ en el directorio.

Por ejemplo, puede cargar datos en una tabla existente mediante DBMS_CLOUD.COPY_DATA:

  1. Utilice un directorio existente, cree un directorio o asocie un sistema de archivos de red para los archivos de origen.

    Consulte Creación de directorios en Autonomous Database para obtener información sobre la creación de un directorio local en la instancia de Autonomous Database.

    Consulte Asociación de un sistema de archivos de red a Autonomous Database para obtener información sobre la asociación de un sistema de archivos de red que contenga los datos que desea cargar.

  2. Cargue datos con un procedimiento DBMS_CLOUD.

    Por ejemplo:

    CREATE TABLE CHANNELS
       (channel_id CHAR(1),
        channel_desc VARCHAR2(20),
        channel_class VARCHAR2(20)
       );
    /
    
    BEGIN
     DBMS_CLOUD.COPY_DATA(
        table_name => 'CHANNELS',
        file_uri_list => 'MY_DIR:channels.txt',
        format => json_object('delimiter' value ',')
     );
    END;
    /
    

    Los parámetros son:

    • table_name: es el nombre de la tabla de destino.

    • file_uri_list: es una especificación de nombres de archivo y directorio para los archivos de origen que desea cargar.

      Puede especificar un directorio y uno o más nombres de archivo o utilizar una lista separada por comas de directorios y nombres de archivo. El formato para especificar un directorio es:'MY_DIR:filename.ext'. Por defecto, el nombre de directorio MY_DIR es un objeto de base de datos y no es sensible a mayúsculas/minúsculas. El nombre del archivo distingue mayúsculas.

      Consulte Carga de datos desde directorios en Autonomous Database para obtener más información y ver un ejemplo de especificación de archivos en un directorio. Esto también muestra información sobre cómo poner el nombre del directorio entre comillas para que el nombre del directorio sea sensible a mayúsculas/minúsculas y para obtener información sobre el uso de comodines.

    • format: define las opciones que puede especificar para describir el formato del archivo de origen, incluido si el archivo es de tipo texto, ORC, Parquet o Avro.

Consulte Procedimiento COPY_DATA para obtener más información.

Consulte Asociación de sistema de archivos de red a Autonomous Database para obtener información sobre la asociación de sistemas de archivos de red.