Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőre vonatkozik:
Databricks SQL
Databricks Runtime 18 LTS and above
Important
Ez a funkció bétaverzióban érhető el. A munkaterület rendszergazdái az Előnézetek lapon szabályozhatják a funkcióhoz való hozzáférést. Lásd: Az Azure Databricks előzetes verziójának kezelése.
Átmásol egy fájlt egy célállomás útra, és visszaad egy FILE hivatkozást, vagy NULL ha a forrásfájl nem létezik vagy elérhetetlen. Kihagyjuk destination a fájl Unity Catalog által kezelt tárolóba való másolását, amely egy FILE EXTERNAL hivatkozást FILE MANAGED hivatkozássá alakít.
Szemantika
try_copy_file(file => file
[, destination => destination ]
[, if_file_exists_mode => mode ])
Pozícióban vagy név szerint is megfogalmazhatod az érveket. Miután név szerint adtál át egy érvet, az összes következő érvet is név szerint kell átadni. További információért lásd: Named parameter invocation.
Arguments
-
file: EgyFILEérték, amit másolni kell. -
destination: Egy opcionálisSTRINGopció, amely teljes célfájlúttal rendelkezik, nem csak egy könyvtárral. Ha kihagyják, a fájlt a Unity Catalog által kezelt tárolóba másolják, így egyFILE EXTERNALhivatkozástFILE MANAGEDhivatkozássá alakítanak. -
if_file_exists_mode: Egy opcionálisSTRINGeszköz, amely beállítja azt a viselkedést, amikor egy fájl már létezik a célúton. Csak az érv használatakordestinationérvényes. Az elfogadott értékek (kis- és kis- jelezhetetlen) a következők:-
'error': Hibát okoz. Ez az alapértelmezett érték. -
'overwrite': Felülírja a meglévő fájlt. -
'skip': Kihagyja a másolást, és visszaadja aFILEmeglévő fájlra vonatkozó hivatkozást.
-
Returns
Egy FILE olyan érték, amely a másolt fájlra hivatkozik, vagy NULL ha a forrásfájl nem létezik vagy elérhetetlen.
Jegyzetek
- Ez a függvény a hibatűrő
copy_fileváltozata. Használd arra, hogy figyelmen kívül hagyd a hibákat, amikor egyFILE EXTERNALhivatkozást hivatkozássáFILE MANAGEDalakítasz, akár explicit (kihagyvadestination) vagy automatikus (érték beillesztéseFILE EXTERNALegyFILE MANAGEDoszlopba). - Ha egy fájl már létezik a cél úton, az Azure Databricks alapértelmezetten hibát generál, hacsak nem állítod
if_file_exists_modebe vagyoverwriteskip-re.
Gyakori hibafeltételek
COPY_FILE_ERROR.FILE_ALREADY_EXISTSCOPY_FILE_AUTHORIZATION_ERROR.WRITE_UNAUTHORIZED
További információért lásd: Hibafeltételek az Azure Databricks-ben.
Examples
Ha a forrásfájl nem létezik, try_copy_file akkor a következő fájlokat adjuk vissza NULL:
SELECT try_copy_file(deleted_file, destination => '/Volumes/archive/reports/report.pdf');
NULL
Ahhoz, hogy egy fájlt a Unity Catalog által kezelt tárolóba konvertálj, és egy FILE EXTERNAL hivatkozást FILE MANAGED hivatkozássá alakítsunk, hagyjuk ki a célpontot:
SELECT try_copy_file(to_file('/Volumes/source/data/input.csv'));
Egy fájl másolására és bármely meglévő célfájl felülírására:
SELECT try_copy_file(
to_file('/Volumes/source/reports/report.pdf'),
destination => '/Volumes/archive/reports/report.pdf',
if_file_exists_mode => 'overwrite'
);