Erste Spalte-Namen mit BCP queryout

Ich muss BCP für eine Tabelle in eine tab-getrennte Datei, aber ich brauche die Spalten-Namen in den ersten Datensatz der Tabelle. Frage 1: Bin ich richtig, dass BCP keinen Schalter dafür? Frage 2: Wenn Nein, warum nicht?

Habe ich versucht, Folgendes zu tun:

BCP "declare @colnames varchar(max); select @colnames=coalesce (@colnames+char(9), '') 
+ Column_Name from db.information_Schema.columns where table_name='table1' order by 
ordinal_position; select @colnames" queryout Table1_Columns.tsv -S?? -U?? -P?? -f** -e**

Format-Datei sieht wie folgt aus:

9.0
1
1 SQLCHAR 0 100 "\r\n" 1 Column_Names SQL_Latin1_General_CP1_CI_AS

Diese bekommt von mir eine Datei mit den Spaltennamen, dann ein zweiter BCP-Befehl wird mir eine Datei mit Daten, und ich nur DOS-kopieren Sie die beiden zusammen. Frage 3: Bin ich schlau oder was? Frage 4: Warum geht es nicht? Ich bekomme die Fehlermeldung:

SQLState = S1000, NativeError = 0
Error = [Microsoft][SQL Native Client]Host-file columns may be skipped only when 
copying into the Server

InformationsquelleAutor Dom | 2014-04-22

Schreibe einen Kommentar