DBAtlas · Atlas de operaciones de bases de datos

ORA-29913: error in executing ODCIEXTTABLEOPEN callout (error al ejecutar el callout ODCIEXTTABLEOPEN)

Oracle

¿Qué significa?

Se produjo un error al leer/analizar el archivo de origen al acceder a una tabla externa. Oracle falló en la rutina del access driver (ORACLE_LOADER / ORACLE_DATAPUMP) a la que llama para obtener los datos de la tabla externa.

¿Por qué ocurre?

Normalmente el archivo no está en la ruta a la que apunta el objeto DIRECTORY, el usuario del SO de Oracle no tiene permiso de lectura sobre el archivo/directorio, no hay permiso de escritura para los archivos log/bad, o los parámetros de acceso (delimitador de campo, formato de registro) son incorrectos. Suele ir acompañado de suberrores como ORA-29400 y KUP-04xxx.

Cómo solucionarlo

Lea los suberrores (KUP-xxxx) para determinar la causa raíz. Verifique la ruta del DIRECTORY y que el archivo exista: SELECT directory_name, directory_path FROM all_directories; Conceda al usuario del SO de Oracle permiso de lectura sobre el archivo y el directorio, y permiso de escritura sobre el directorio de log/bad. Haga coincidir la sección ACCESS PARAMETERS de la definición de la tabla externa con el formato del archivo de origen. Si es necesario, revise los grants READ/WRITE sobre el DIRECTORY.

Abrir en DBAtlas →

Más entradas de este motor