Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
fungsi
Berlaku untuk:
pemeriksaan Databricks SQL
Databricks Runtime 18 LTS ke atas
Important
Fitur ini ada di Beta. Admin ruang kerja dapat mengontrol akses ke fitur ini dari halaman Pratinjau . Lihat Kelola Pratinjau Azure Databricks.
Menyalin file ke jalur tujuan dan mengembalikan referensi FILE , atau NULL jika file sumber tidak ada atau tidak dapat diakses. Abaikan destination untuk menyalin file ke penyimpanan yang dikelola Unity Catalog, yang mengubah FILE EXTERNAL referensi menjadi FILE MANAGED referensi.
Syntax
try_copy_file(file => file
[, destination => destination ]
[, if_file_exists_mode => mode ])
Anda dapat meneruskan argumen secara posisi atau nama. Setelah Anda mengirimkan argumen berdasarkan nama, semua argumen berikut juga harus diteruskan berdasarkan nama. Untuk informasi lebih lanjut, lihat pemanggilan parameter bernama.
Arguments
-
file: Nilai yangFILEharus disalin. -
destination: OpsionalSTRINGdengan jalur file tujuan lengkap, bukan hanya direktori. Jika dihilangkan, file disalin ke penyimpanan yang dikelola Unity Catalog, mengonversiFILE EXTERNALreferensi menjadiFILE MANAGEDreferensi. -
if_file_exists_mode: OpsionalSTRINGyang mengatur perilaku ketika file sudah ada di jalur tujuan. Hanya berlaku saat menggunakandestinationargumen. Nilai yang diterima (tidak sensitif huruf besar) adalah:-
'error': Muncul kesalahan. Ini adalah nilai default. -
'overwrite': Menimpa file yang sudah ada. -
'skip': Melewati penyalinan dan mengembalikanFILEreferensi ke file yang ada.
-
Returns
FILE Nilai yang merujuk pada file yang disalin, atau NULL jika file sumber tidak ada atau tidak dapat diakses.
Catatan
- Fungsi ini adalah versi
copy_filefungsi yang tahan kesalahan. Gunakan untuk mengabaikan kesalahan saat mengonversiFILE EXTERNALreferensi menjadiFILE MANAGEDreferensi, baik konversi tersebut eksplisit (dihilangkandestination) maupun otomatis (memasukkanFILE EXTERNALnilai ke dalamFILE MANAGEDkolom). - Jika sebuah file sudah ada di jalur tujuan, Azure Databricks secara default akan muncul error kecuali Anda mengatur
if_file_exists_modekeoverwriteatauskip.
Kondisi kesalahan umum
COPY_FILE_ERROR.FILE_ALREADY_EXISTSCOPY_FILE_AUTHORIZATION_ERROR.WRITE_UNAUTHORIZED
Untuk informasi lebih lanjut, lihat Kondisi kesalahan di Azure Databricks.
Examples
Jika file sumber tidak ada, try_copy_file mengembalikan NULL:
SELECT try_copy_file(deleted_file, destination => '/Volumes/archive/reports/report.pdf');
NULL
Untuk menyalin file ke penyimpanan yang dikelola Unity Catalog, mengonversi referensi FILE EXTERNAL menjadi FILE MANAGED referensi, hilangkan tujuan:
SELECT try_copy_file(to_file('/Volumes/source/data/input.csv'));
Untuk menyalin file dan menimpa file tujuan yang sudah ada:
SELECT try_copy_file(
to_file('/Volumes/source/reports/report.pdf'),
destination => '/Volumes/archive/reports/report.pdf',
if_file_exists_mode => 'overwrite'
);