Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:
, sprawdź, czy usługa SQL databricks
Databricks Runtime 18 LTS lub nowsza
Important
Ta funkcja jest dostępna w wersji beta. Administratorzy obszaru roboczego mogą kontrolować dostęp do tej funkcji ze strony Podglądy . Zobacz Zarządzanie wersjami zapoznawczami usługi Azure Databricks.
Kopiuje plik do ścieżki docelowej i zwraca referencję FILE , lub NULL jeśli plik źródłowy nie istnieje lub jest niedostępny. Pomijam destination kopiowanie pliku do pamięci zarządzanej przez Unity Catalog, która konwertuje FILE EXTERNAL referencję na referencję FILE MANAGED .
Składnia
try_copy_file(file => file
[, destination => destination ]
[, if_file_exists_mode => mode ])
Możesz przekazywać argumenty pozycjonalnie lub po imieniu. Po przekazaniu argumentu po imieniu, wszystkie kolejne argumenty muszą być również przekazywane po imieniu. Więcej informacji można znaleźć w artykule wywołanie parametrów o nazwie (nazwane parametry).
Arguments
-
file: WartośćFILEdo skopiowania. -
destination: OpcjonalnySTRINGz pełną ścieżką docelową pliku, a nie tylko katalog. Po pominięciu pliku jest kopiowany do pamięci zarządzanej przez Unity Catalog, konwertując referencjęFILE EXTERNALw referencjęFILE MANAGED. -
if_file_exists_mode: OpcjonalneSTRING, które ustawia zachowanie, gdy plik już istnieje na ścieżce docelowej. Dotyczy tylko przy użyciu argumentudestination. Akceptowane wartości (nierozróżniające wielka litera) to:-
'error': To powoduje błąd. Jest to wartość domyślna. -
'overwrite': Nadpisuje istniejący plik. -
'skip': Pomija kopiowanie i zwraca odwołanieFILEdo istniejącego pliku.
-
Zwroty
Wartość FILE odwołująca się do skopiowanego pliku lub NULL jeśli plik źródłowy nie istnieje lub jest niedostępny.
Notatki
- Ta funkcja jest wersją
copy_filefunkcji tolerującą błędy. Użyj go do ignorowania błędów podczas konwersji odwołania do referencjiFILE MANAGED, niezależnie od tego, czy konwersja jest jawna (pomijającdestination) czy automatyczna (wstawianieFILE EXTERNALwartości do kolumnyFILE MANAGED).FILE EXTERNAL - Jeśli plik już istnieje na ścieżce docelowej, Azure Databricks domyślnie wyświetla błąd, chyba że ustawisz
if_file_exists_modenaoverwritelubskip.
Typowe warunki błędów
COPY_FILE_ERROR.FILE_ALREADY_EXISTSCOPY_FILE_AUTHORIZATION_ERROR.WRITE_UNAUTHORIZED
Więcej informacji można znaleźć w artykule Condition Error conditions in Azure Databricks.
Examples
Jeśli plik źródłowy nie istnieje, try_copy_file zwraca NULL:
SELECT try_copy_file(deleted_file, destination => '/Volumes/archive/reports/report.pdf');
NULL
Aby skopiować plik do pamięci zarządzanej przez Unity Catalog, konwertując FILE EXTERNAL referencję na referencję FILE MANAGED , pomiń cel:
SELECT try_copy_file(to_file('/Volumes/source/data/input.csv'));
Aby skopiować plik i nadpisać dowolny istniejący plik docelowy:
SELECT try_copy_file(
to_file('/Volumes/source/reports/report.pdf'),
destination => '/Volumes/archive/reports/report.pdf',
if_file_exists_mode => 'overwrite'
);