ORA-29913: error in executing ODCIEXTTABLEOPEN callout (erro ao executar o callout ODCIEXTTABLEOPEN)
OracleO que significa?
Ocorreu um erro ao ler/interpretar o arquivo de origem durante o acesso a uma external table. O Oracle falhou na rotina do access driver (ORACLE_LOADER / ORACLE_DATAPUMP) que chama para obter os dados da external table.
Por que acontece?
Geralmente o arquivo não está no caminho apontado pelo objeto DIRECTORY, o usuário do sistema operacional do Oracle não tem permissão de leitura no arquivo/diretório, não há permissão de escrita para os arquivos de log/bad, ou os access parameters (delimitador de campo, formato de registro) estão errados. Costuma vir acompanhado de suberros como ORA-29400 e KUP-04xxx.
Como resolver
Leia os suberros (KUP-xxxx) para determinar a causa raiz. Verifique o caminho do DIRECTORY e se o arquivo existe: SELECT directory_name, directory_path FROM all_directories; Conceda ao usuário do sistema operacional do Oracle permissão de leitura no arquivo e no diretório, e permissão de escrita no diretório de log/bad. Ajuste a seção ACCESS PARAMETERS da definição da external table ao formato do arquivo de origem. Se necessário, verifique os grants READ/WRITE no DIRECTORY.
Mais entradas deste banco
- ORA-00600internal error code, arguments: [...]
- ORA-07445exception encountered: core dump
- ORA-01102cannot mount database in EXCLUSIVE mode
- ORA-19804cannot reclaim N bytes disk space from M bytes limit (não é possível recuperar N bytes de espaço em disco do limite de M bytes)
- ORA-00494enqueue held for too long by 'inst N, osid M' (enqueue mantido por tempo demais)
- ORA-04021timeout occurred while waiting to lock object (timeout ao aguardar o lock de um objeto)
- ORA-04061existing state of package/procedure has been invalidated (o estado existente do package/procedure foi invalidado)