Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Exportieren Sie Werte von SQL Server in eine TXT-Datei

Verwenden Sie eine Abfrage, um die Variablen zu sammeln, die Sie exportieren möchten. Etwa so:

DECLARE @var1 INTEGER
DECLARE @var2 INTEGER

SELECT @var1 = 10
SELECT @var2 = 22

SELECT 'variable 1' AS VarName, @var1 AS VarValue
UNION
SELECT 'variable 2' AS VarName, @var2 AS VarValue

Verwenden Sie diese Abfrageanweisung im folgenden Befehl. Verwenden Sie queryout und ersetzen Sie [querystatement] durch die obige Anweisung oder verwenden Sie eine Variable für die Abfragezeichenfolge.

EXEC master..XP_CMDSHELL 'bcp "[querystatement]" queryout "c:\spt_values.dat"'

Wenn die Variable außerhalb der Anweisung deklariert werden muss:

DECLARE @cmd varchar(1000)
DECLARE @sql varchar(8000) 
DECLARE @var1 int
SELECT @var1 = 10
SET @cmd='"select '+CAST(@var1 AS VARCHAR(10))+'"' 
SELECT @sql = 'bcp '[email protected]+' queryout I:\File\mytest.txt -c -t -T -S YAMUNA\SQLEXPRESS';
exec xp_cmdshell @sql;