fungsi create_file

Berlaku untuk:check ditandai ya pemeriksaan Databricks SQL ditandai ya 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.

Mengunggah konten string atau biner ke jalur tujuan dan mengembalikan FILE referensi ke file yang diunggah.

Syntax

create_file(content => content
  [, destination_path => path ]
  [, if_file_exists => mode ]
  [, content_type => content_type ])

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

  • content: A STRING atau BINARY ekspresi dengan konten yang akan disimpan sebagai file. A STRING disimpan sebagai byte yang dikodekan UTF-8.
  • destination_path: Jalur opsional STRING untuk mengunggah konten.
  • if_file_exists: Opsional STRING yang mengatur perilaku ketika file sudah ada di jalur tujuan. Hanya berlaku saat menggunakan destination_path argumen. Nilai yang diterima (tidak sensitif huruf besar) adalah:
    • 'error': Muncul kesalahan. Ini adalah nilai default.
    • 'overwrite': Menimpa file yang sudah ada.
    • 'skip': Melewati unggahan dan mengembalikan FILE referensi ke file yang ada.
  • content_type: Opsional STRING yang menentukan jenis konten file. Jika tidak disediakan, tipe konten disimpulkan dari byte input.

Returns

Nilai yang FILE merujuk pada file yang diunggah.

Catatan

  • Jika Anda menggunakan destination_path, file diunggah secara atomik ke jalur tersebut. Anda harus memiliki akses tulis ke lokasi target, yang biasanya adalah volume Unity Catalog.
  • Jika sebuah file sudah ada di jalur tujuan, Azure Databricks secara default akan muncul error kecuali Anda mengatur if_file_exists ke overwrite atau skip.

Kondisi kesalahan umum

  • CREATE_FILE_ERROR.FILE_ALREADY_EXISTS
  • CREATE_FILE_AUTHORIZATION_ERROR.WRITE_UNAUTHORIZED
  • CREATE_FILE_ILLEGAL_USAGE.CONTENT_REQUIRED
  • CREATE_FILE_ILLEGAL_USAGE.IF_FILE_EXISTS_WITHOUT_DESTINATION
  • CREATE_FILE_ILLEGAL_USAGE.IF_FILE_EXISTS_MODE

Untuk informasi lebih lanjut, lihat Kondisi kesalahan di Azure Databricks.

Examples

Untuk menyimpan string sebagai file baru pada jalur tertentu:

SELECT create_file(
  content => 'hello, world',
  destination_path => '/Volumes/my_catalog/my_schema/my_volume/greetings.txt'
);

Untuk menyimpan byte mentah dan mengatur tipe konten secara eksplisit:

SELECT create_file(
  content => my_binary_col,
  destination_path => '/Volumes/my_catalog/my_schema/my_volume/image.png',
  content_type => 'image/png'
)
FROM raw_uploads;

Untuk melewati unggahan jika file sudah ada di tujuan:

SELECT create_file(
  content => my_binary_col,
  destination_path => '/Volumes/my_catalog/my_schema/my_volume/report.pdf',
  if_file_exists => 'skip'
);

Jika destination_path tidak diatur, if_file_exists akan muncul kesalahan:

SELECT create_file(content => 'data', if_file_exists => 'overwrite');
Error: CREATE_FILE_ILLEGAL_USAGE.IF_FILE_EXISTS_WITHOUT_DESTINATION