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

SQL Server BCP-Export mit Komma im SQL-Feld

Wenn ein Feld, das Sie exportieren, das Zeichen enthalten kann, das Sie zum Abgrenzen der Felder in Ihrer Datei verwenden, haben Sie folgende Möglichkeiten:

  1. Verwenden Sie ein anderes Trennzeichen - dies scheint der einfachste Weg zu sein. Verwenden Sie einfach "|" oder "~" als Trennzeichen. Führen Sie eine globale Ersetzung von "," durch "|" durch in der Formatdatei mit fast jedem Texteditor. Es ist nicht klar, warum es schwierig wäre, "die gesamte" Datei zu ändern. Vielleicht haben Sie einen Empfänger der Datei, der durch Kommas getrennt werden muss?

  2. Wenn Sie Kommas als Trennzeichen verwenden müssen, müssen Sie Ihr Spaltentrennzeichen von Komma (,) in Anführungszeichen-Komma-Anführungszeichen (",") ändern. Dazu müssen Sie das Escape-Zeichen verwenden, damit das BCP-Programm die Anführungszeichen ignoriert, die Sie als Trennzeichen in der Ausgabedatei verwenden möchten, damit es sie nicht als die Anführungszeichen betrachtet, die das Trennzeichen in der Formatdatei enthalten . Also...

Statt ","... verwenden Sie... "\",\""

Dies führt zu folgendem

col1,col2,"col,3",col4

Für col1 ist das Trennzeichen:, um dies in der Formatdatei darzustellen, verwenden Sie:","

Für col2 ist das Trennzeichen:,", um dies in der Formatdatei darzustellen, verwenden Sie:",\""

Für col3 ist das Trennzeichen:", um dies in der Formatdatei darzustellen, verwenden Sie:"\","

Für col4 ist das Trennzeichen:, um dies in der Formatdatei darzustellen, verwenden Sie:","

Ich hoffe, das hilft.