2 Stimmen

Benötigen Hilfe, um Tabelle von SQL Server 2008 in Textdatei zu exportieren

Ich versuche, eine Tabelle in MS SQL Server 2008 in eine Textdatei auf meinem System zu exportieren. Ich schreibe den folgenden Befehl im SQL Server-Abfragefenster

SELECT *
FROM [AdventureWorks].[Person].[AddressType] 
INTO OUTFILE 'C:/filename.csv'
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n';

Jetzt, immer wenn ich diesen Befehl schreibe, gibt mir die SQL-Hilfe einen Fehler aus, dass incorrect syntax near 'INTO'

dann habe ich versucht, die Wörter "FROM" und "INTO" wie folgt auszutauschen

SELECT *
INTO OUTFILE 'C:/filename.csv'
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
FROM [AdventureWorks].[Person].[AddressType] ;

Jetzt gibt es mir einen Fehler, dass incorrect syntax near 'C:/filename.csv'

Bitte helfen Sie mir dabei Ich kann diese Fehler nicht entfernen und ein funktionierendes SQL erhalten

6voto

Rajeev Bera Punkte 2021

Es gibt mehr als viele Möglichkeiten, ein Problem zu lösen. In diesem Fall gibt es zwei Lösungen

Lösung 1

  • Klicken Sie mit der rechten Maustaste über den Datenbanknamen -> Aufgaben -> Daten exportieren
  • Wählen Sie die Tabelle als Datenquelle aus
  • Wählen Sie als Ziel eine Flat-Datei als Ziel aus
  • Wählen Sie einen Dateinamen (jeder Dateiname)
  • Markieren Sie "Spaltennamen in der ersten Datenzeile" (dies ist optional)

Und das ist es.

Lösung 2

DECLARE  
 @saveas VARCHAR(2048)
,@query VARCHAR(2048)
,@bcpquery VARCHAR(2048)
,@bcpconn VARCHAR(64)
,@bcpdelim VARCHAR(2)

 SET @query      = 'select * from table1'
 SET @saveas     = '\\SERVER1\SHARE1\FOLDER\QueryOutput.txt'
 SET @bcpdelim   = '|'
 SET @bcpconn    = '-T' -- Vertraut
 --SET @bcpconn    = '-U  -P ' -- SQL-Authentifizierung

 SET @bcpquery = 'bcp "' + replace(@query, char(10), '') + '" QUERYOUT "' + @saveas + '" -c -t^' + @bcpdelim + ' ' + @bcpconn + ' -S ' + @@servername
EXEC master..xp_cmdshell @bcpquery

1voto

user4198654 Punkte 11

Um den Fehler "SQL Server hat den Zugriff auf die Prozedur 'sys.xp_cmdshell' des Komponenten 'xp_cmdshell' blockiert, weil diese Komponente im Rahmen der Sicherheitskonfiguration für diesen Server deaktiviert ist." zu beheben, tun Sie zuerst dies.

-- Um Änderungen an erweiterten Optionen zu erlauben. EXEC sp_configure 'show advanced options', 1; GO -- Um den aktuell konfigurierten Wert für erweiterte Optionen zu aktualisieren. RECONFIGURE; GO -- Um das Feature zu aktivieren. EXEC sp_configure 'xp_cmdshell', 1; GO -- Um den aktuell konfigurierten Wert für dieses Feature zu aktualisieren. RECONFIGURE; GO

Weitere Informationen hier: http://msdn.microsoft.com/de-de/library/ms190693.aspx

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X