Daten exportieren mit sql Script?
Hallo zusammen
Momentan arbeite ich mit Microsoft SQL Server Management Studio und habe ein kleines Problem dabei. Nämlich sollte ich mit Hilfe eines SQL-Skript mit dem Namen expGemeinde.sql alle Einträge aus der Tabelle tblGemeinde in die Textdatei M:\Scripts\sqlcmd\tblGemeinde.txt exportieren. Leider habe ich im Internet nur Anleitungen zu Befehlen wie 'bcp' etc. gefunden und weiss nicht wie ich diese in einem SQL Script anwenden sollte.
Danke für eure Hilfe :)

2 Antworten
Hallo!
Leider musst du dir dafür etwas SQL-Syntax aneigenen, auch wenn du mit
SQL Server Management Studio arbeitest.
So Befehle wie SELECT usw.
Weil ein Export-Script will ich dir hier jetzt nicht schreiben.
Aber ein Tip: die Ausgabe von SQL ist normalerweise schon in Textform.
Also das SELECT statt auf den Bildschirm, in eine Datei umlenken ...
Bitte
Hallo!
Ich kenne mich mit "SQL Server Management Studio" nicht aus, ich arbeite inzwischen mit "MySQL Workbench" und dass scheint mir näher an der SQL-Syntax (vor Jahrzehnten habe ich die Befehle noch in 'echte" Scripts gepackt), aber dein "Select From" sieht doch ganz gut aus, klappt das?
Jep, funktioniert wunderbar :) @Tschoo
Mit
SELECT * FROM tblGemeinde
müsste das gehen. Da bekommst Du die komplette Tabelle im Textformat angezeigt bzw. umgeleitet als Datei.
Mit dem Zusatz ORDER BY spalte-1, spalte-2, spalte-3 DESC
kannst auch noch bei Bedarf durch Angabe von Spaltennamen die Sortierung festlegen. DESC als Zusatz bewirkt für diese Spalte eine absteigende Sortierung.
Hab es nun folgendermassen gelöst:
-- To allow advanced options to be changed.
EXEC sp_configure 'show advanced options', 1;
GO
-- To update the currently configured value for advanced options.
RECONFIGURE;
GO
-- To enable the feature.
EXEC sp_configure 'xp_cmdshell', 1;
GO
-- To update the currently configured value for this feature.
RECONFIGURE;
GO
Declare @cmd nvarchar(4000);
SET @cmd = 'bcp "SELECT * FROM AgroStatTest.dbo.tblGemeinde" queryout M:\Scripts\sqlcmd\tblGemeinde.txt -c -T -S VMWS2\INSTANZ1';
EXEC master..xp_cmdshell @cmd ,no_output;