sql >> Databáze >  >> RDS >> Sqlserver

Nový způsob kopírování souborů v SQL Server 2019

Dvě nové uložené procedury představené v SQL Server 2019 jsou sys.xp_copy_file a sys.xp_copy_files , které vám umožňují kopírovat soubory.

Před SQL Server 2019 byste museli použít xp_cmdshell , který vytvoří příkazový shell Windows a předá řetězec k provedení. Nové uložené procedury představené v SQL Server 2019 vám umožňují kopírovat soubory, aniž byste se spoléhali na xp_cmdshell .

Příklad 1 – Kopírování 1 souboru

Můžete použít sys.xp_copy_file zkopírovat jeden soubor. Pomocí této uložené procedury můžete také pojmenovat nový soubor.

Příklad na Linuxu:

EXEC master.sys.xp_copy_file
'/var/opt/mssql/data/samples/albums.csv',
'/var/opt/mssql/data/samples/albums2.csv';

Tento kód jsem úspěšně spustil na svém Macu, který používá SQL Server 2019 na Linuxu.

Chcete-li kopírovat soubory v systému Windows, musíte použít konvenci cest systému Windows.

Příklad ve Windows:

EXEC master.sys.xp_copy_file
'D:\mssql\data\samples\albums.csv',
'D:\mssql\data\samples\albums2.csv';

Příklad 2 – Kopírování více souborů

Můžete použít sys.xp_copy_files pro kopírování více souborů.

Příklad na Linuxu:

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

Zde jsem ve stejné složce jako předchozí příklad. V tomto případě jsem zkopíroval všechny soubory, které začínají albums a končí na .csv . Používám hvězdičku (* ) zástupný znak pro výběr souborů, které mohou obsahovat další znaky za albums část.

Tento příklad zkopíruje soubory do /var/opt/mssql/data/samples/final adresář.

Příklad ve Windows:

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

Mazání souborů

SQL Server 2019 také představil sys.xp_delete_files uložená procedura, která umožňuje mazat soubory. Příklady odstranění souborů vytvořených v tomto článku naleznete v části Jak odstranit soubory v SQL Server 2019.


  1. Změny licencí Common Sense pro SQL Server 2014 Standard Edition

  2. SQL SELECT IN

  3. Hodnota pole spojit na řetězec v SQL Server

  4. Datový model pro sledování vašeho nejcennějšího majetku