Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Cách xóa tệp trong SQL Server 2019

Trong SQL Server 2019, bạn có thể sử dụng sys.xp_delete_files thủ tục được lưu trữ để xóa một tệp trên hệ thống tệp.

Quy trình được lưu trữ này đã được giới thiệu trong SQL Server 2019 và nó có thể được sử dụng cùng với sys.xp_copy_filesys.xp_copy_files (cả hai đều được giới thiệu trong SQL Server 2019), cho phép bạn sao chép tệp.

Trước SQL Server 2019, bạn cần sử dụng xp_cmdshell , tạo ra một trình bao lệnh Windows và chuyển vào một chuỗi để thực thi. Các thủ tục được lưu trữ mới được giới thiệu trong SQL Server 2019 cho phép bạn sao chép và xóa tệp mà không cần dựa vào xp_cmdshell .

Ví dụ 1 - Xóa 1 tệp

Dưới đây là một ví dụ về việc xóa một tệp.

Ví dụ trên Linux:

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

Tôi đã chạy mã này trên máy Mac của mình, sử dụng SQL Server 2019 trên Linux. Thao tác này đã xóa thành công tệp có tên albums2.csv (đường dẫn đầy đủ /var/opt/mssql/data/samples/albums2.csv ).

Để sao chép tệp trên hệ thống Windows, bạn cần sử dụng quy ước đường dẫn Windows.

Ví dụ trên Windows:

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

Rõ ràng, vị trí chính xác sẽ phụ thuộc vào tình huống của bạn.

Ví dụ 2 - Xóa nhiều tệp

Bạn có thể sử dụng quy trình tương tự để xóa nhiều tệp.

Ví dụ trên Linux:

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

Trong trường hợp này, tôi đã xóa tất cả các tệp trong /var/opt/mssql/data/samples/final thư mục bắt đầu bằng albums và kết thúc bằng .csv . Tôi sử dụng dấu hoa thị (* ) ký tự đại diện để chọn các tệp có thể bao gồm các ký tự khác sau albums một phần.

Ví dụ trên Windows:

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

Ví dụ 3 - Xóa thư mục

Bạn có thể sử dụng quy trình tương tự để xóa toàn bộ thư mục.

Ví dụ trên Linux:

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

Trong trường hợp này, tôi đã xóa /var/opt/mssql/data/samples/final toàn bộ thư mục.

Ví dụ trên 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. Hợp nhất nhiều hàng thành một hàng

  2. Phần đệm bên trái trong SQL Server - 3 LPAD () Tương đương

  3. Giới hạn mệnh đề IN trong Sql Server

  4. Visual Studio:ContextSwitchDeadlock

  5. Cách cài đặt SQL Server trên Ubuntu 18.04