Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Cara Menghapus File di SQL Server 2019

Di SQL Server 2019, Anda dapat menggunakan sys.xp_delete_files prosedur tersimpan untuk menghapus file pada sistem file.

Prosedur tersimpan ini diperkenalkan di SQL Server 2019, dan dapat digunakan bersama dengan sys.xp_copy_file dan sys.xp_copy_files (keduanya juga diperkenalkan di SQL Server 2019), yang memungkinkan Anda menyalin file.

Sebelum SQL Server 2019, Anda harus menggunakan xp_cmdshell , yang memunculkan shell perintah Windows dan meneruskan string untuk dieksekusi. Prosedur tersimpan baru yang diperkenalkan di SQL Server 2019 memungkinkan Anda menyalin dan menghapus file tanpa bergantung pada xp_cmdshell .

Contoh 1 – Hapus 1 File

Berikut ini contoh menghapus satu file.

Contoh di Linux:

EXEC master.sys.xp_delete_files
'/var/opt/mssql/data/samples/albums2.csv';

Saya menjalankan kode ini di Mac saya, yang menggunakan SQL Server 2019 di Linux. Ini berhasil menghapus file bernama albums2.csv (path lengkap /var/opt/mssql/data/samples/albums2.csv ).

Untuk menyalin file di sistem Windows, Anda harus menggunakan konvensi jalur Windows.

Contoh di Windows:

EXEC master.sys.xp_delete_files
'D:\mssql\data\samples\albums2.csv';

Jelas, lokasi yang tepat akan tergantung pada situasi Anda.

Contoh 2 – Hapus Banyak File

Anda dapat menggunakan prosedur yang sama untuk menghapus banyak file.

Contoh di Linux:

EXEC master.sys.xp_delete_files
'/var/opt/mssql/data/samples/final/albums*.csv';

Dalam hal ini, saya menghapus semua file di /var/opt/mssql/data/samples/final direktori yang dimulai dengan albums dan diakhiri dengan .csv . Saya menggunakan tanda bintang (* ) wildcard untuk memilih file yang mungkin menyertakan karakter lain setelah albums bagian.

Contoh di Windows:

EXEC master.sys.xp_delete_files
'D:\mssql\data\samples\final\albums*.csv';

Contoh 3 – Hapus Folder

Anda dapat menggunakan prosedur yang sama untuk menghapus seluruh folder.

Contoh di Linux:

EXEC master.sys.xp_delete_files
'/var/opt/mssql/data/samples/final/';

Dalam hal ini, saya menghapus /var/opt/mssql/data/samples/final direktori sama sekali.

Contoh di Windows:

EXEC master.sys.xp_delete_files
'D:\mssql\data\samples\final\';

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL Server Azure / 2022 Tabel Buku Besar Database dari Linux.

  2. Bagaimana mengatasi tidak dapat mengganti kesalahan penyandian saat memasukkan XML ke SQL Server

  3. Cara Menggunakan Pencarian Semantik di SQL Server

  4. Cara Membuat Rencana Eksekusi di SQL Server

  5. SQL Server:gunakan parameter di CREATE DATABASE