daHartl 0 Geschrieben 10. November 2014 Melden Geschrieben 10. November 2014 Hallo zusammen, gibt es eine Möglichkeit, per SQL-Query bei einem SQL 2005 Express die Daten einer Tabelle in ein .txt-File zu schreiben? Beispiel = funktioniert leider nicht! BCP MyDatabase.MyCustomer out c:\customer.txt Falsche Syntax in der Nähe von '.'. Vielen Dank im Voraus für eure Hilfe! da Hartl
Sunny61 835 Geschrieben 10. November 2014 Melden Geschrieben 10. November 2014 Du darfst in Zukunft auch gerne die Quelle deiner Beispiele zitieren. In http://blogs.msdn.com/b/euanga/archive/2006/07/20/672272.aspxfinde ich zu BCP diesen Hinweis: BCP is a command line tool that can be used to import text files, it runs as an external process but has been around for ages and is stable and predictable, it also has some nice touches like format files. http://msdn.microsoft.com/de-de/library/ms162802.aspx Hat denn der Benutzer, der BCP auf der Commandline ausführt, auch wirklich genügend Berechtigungen? Stichwort administrative Commandline oder auch UAC genannt. Wenn Du so einen Export öfter machst, kannst Du dir auch ein Script im SQL Server Management Studio erstellen: http://www.dotnetgoodies.com/article/Microsoft_SQL_Server/65/How_to_ImportExport_Data_in_SQL_Server_2005_Express_Edition.aspx
daHartl 0 Geschrieben 11. November 2014 Autor Melden Geschrieben 11. November 2014 Hab total überlesen, dass BCP ja in der "Windows-Eingabeaufforderung" ausgeführt wird :-(. Daher leider ist es leider nicht zu gebrauchen für meine Anforderung. Ich habe hier ein SQL-Script (Start per .bat) was die Daten sozusagen von einer Transfertabelle (welche in dem Skript vorher mit BULK INSERT aus einer .CSV gefüllt wird) einliest. Jetzt hatte ich den Fall, dass ein Datumsformat erwartet wurde, jedoch ein Text in einem Feld stand und das Scrip abgebrochen ist. Da das Error.log-Handling beim BULK INSERT schon vorhanden ist, habe ich mir gedacht, ob es denn möglich wäre, im Fehlerfall (per TRY CATCH) eine "Fehlerdatei" (z.B. mit dem Inhalt der Transfertabelle) zu schreiben. Die Batch-Routine würde den Fehler erkennen und entsprechend weiter verarbeiten! da Hartl
Sunny61 835 Geschrieben 11. November 2014 Melden Geschrieben 11. November 2014 Deine beiden Threads gehören zusammen? Woher soll man das wissen? Es gibt auch SQLCMD. Wenn es noch Probleme gibt, solltest Du besser einen neuen Thread erstellen und darin die exakte 'Anforderung' definieren, keine Möchte-Gerne-Lösungen diskutieren.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden