Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Se aplica a:
Databricks SQL
Databricks Runtime 18 LTS y versiones posteriores
Importante
Esta característica se encuentra en su versión beta. Los administradores del área de trabajo pueden controlar el acceso a esta característica desde la página Vistas previas . Consulte Administrar versiones preliminares de Azure Databricks.
Copia un archivo a una ruta de destino y devuelve una FILE referencia, o NULL si el archivo fuente no existe o es inaccesible. Omite destination copiar el archivo al almacenamiento gestionado por Unity Catalog, que convierte una FILE EXTERNAL referencia en una FILE MANAGED referencia.
Syntax
try_copy_file(file => file
[, destination => destination ]
[, if_file_exists_mode => mode ])
Puedes presentar argumentos por posición o por nombre. Después de aprobar un argumento por nombre, todos los argumentos siguientes también deben pasarse por nombre. Para más información, véase invocación de parámetros nombrados.
Arguments
-
file: UnFILEvalor para copiar. -
destination: Una opciónSTRINGcon la ruta completa del archivo de destino, no solo un directorio. Cuando se omite, el archivo se copia al almacenamiento gestionado por el Catálogo de Unity, convirtiendo unaFILE EXTERNALreferencia en unaFILE MANAGEDreferencia. -
if_file_exists_mode: Un opcionalSTRINGque establece el comportamiento cuando un archivo ya existe en la ruta de destino. Solo se aplica cuando se usa eldestinationargumento. Los valores aceptados (insensibles a mayúsculas) son:-
'error': Genera un error. Este es el valor predeterminado. -
'overwrite': Sobrescribe el archivo existente. -
'skip': Omite la copia y devuelve unaFILEreferencia al archivo existente.
-
Devoluciones
Un FILE valor que hace referencia al archivo copiado, o NULL si el archivo fuente no existe o es inaccesible.
Notas
- Esta función es la versión tolerante a errores de
copy_filela función. Úsalo para ignorar errores al convertir unaFILE EXTERNALreferencia en unaFILE MANAGEDreferencia, ya sea que la conversión sea explícita (omitirdestination) o automática (insertar unFILE EXTERNALvalor en unaFILE MANAGEDcolumna). - Si un archivo ya existe en la ruta de destino, Azure Databricks genera un error por defecto a menos que configures
if_file_exists_modeenoverwriteoskip.
Condiciones de error comunes
COPY_FILE_ERROR.FILE_ALREADY_EXISTSCOPY_FILE_AUTHORIZATION_ERROR.WRITE_UNAUTHORIZED
Para más información, consulta Condiciones de error en Azure Databricks.
Examples
Si el archivo fuente no existe, try_copy_file devuelve NULL:
SELECT try_copy_file(deleted_file, destination => '/Volumes/archive/reports/report.pdf');
NULL
Para copiar un archivo al almacenamiento gestionado por el Catálogo Unity, convirtiendo una FILE EXTERNAL referencia en una FILE MANAGED referencia, omite el destino:
SELECT try_copy_file(to_file('/Volumes/source/data/input.csv'));
Para copiar un archivo y sobrescribir cualquier archivo de destino existente:
SELECT try_copy_file(
to_file('/Volumes/source/reports/report.pdf'),
destination => '/Volumes/archive/reports/report.pdf',
if_file_exists_mode => 'overwrite'
);