Creación de un directorio

Para crear directorios, utilice el comando CREATE DIRECTORY de la base de datos. Con CREATE DIRECTORY, puede especificar la ruta como una ruta relativa para el nuevo directorio.

CREATE DIRECTORY crea el objeto de directorio de base de datos y también crea el directorio del sistema de archivos si aún no existe. Si el directorio del sistema de archivos existe, CREATE DIRECTORY solo crea el objeto de directorio de base de datos. Por ejemplo, el siguiente comando crea el directorio de base de datos denominado staging y crea el directorio stage del sistema de archivos:

CREATE DIRECTORY staging AS 'stage';

También puede crear subdirectorios. Por ejemplo, el siguiente comando crea el objeto de directorio de base de datos sales_staging y el directorio stage/sales del sistema de archivos:

CREATE DIRECTORY sales_staging AS 'stage/sales';

Al crear subdirectorios, no es necesario crear el directorio inicial del sistema de archivos. Por ejemplo, en el ejemplo anterior si el directorio stage no existe, el comando CREATE DIRECTORY crea ambos directorios stage y stage/sales.

Para agregar un directorio, debe tener el privilegio del sistema CREATE ANY DIRECTORY. Al usuario ADMIN se le otorga el privilegio del sistema CREATE ANY DIRECTORY. El usuario ADMIN puede otorgar privilegios del sistema CREATE ANY DIRECTORY a otros usuarios.

Consulte CREATE DIRECTORY en Referencia de lenguaje de Oracle Database 19c o Referencia de lenguaje de Oracle Database 23ai para obtener más información.

Note:

  • CREATE DIRECTORY crea el objeto de directorio de base de datos en Autonomous Database y también crea el directorio del sistema de archivos.

  • Puede crear un directorio en el sistema de archivos raíz para ver todos los archivos con los siguientes comandos:

    CREATE OR REPLACE DIRECTORY ROOT_DIR AS '';

    Después de crear el directorio ROOT_DIR, utilice el siguiente comando para mostrar todos los archivos:

    SELECT * FROM DBMS_CLOUD.list_files('ROOT_DIR');

    Para ejecutar DBMS_CLOUD.LIST_FILES con un usuario que no sea ADMIN, debe otorgar privilegios de lectura en el directorio a ese usuario. Consulte Función LIST_FILES para obtener más información.

  • El espacio utilizado por los directorios que crea y su contenido forma parte de la asignación de almacenamiento de datos de la base de datos.