Wie man von BCP zum generieren einer Format-Datei für den Import mit fester Breite Daten in eine SQL Server-Tabelle?

Den bcp-Befehl, den ich verwende:

bcp TableName format nul -c -f c:\folder\TargetFile.xml -x -S ServerName -T -q

Ich glaube, ich brauche nur die Felder, um eine Art von xsi:type="CharFixed" dann eher xsi:type="CharTerm".

Xml, die es schafft, die bei mir nicht funktioniert:

<?xml version="1.0"?>
<BCPFORMAT xmlns="http://schemas.microsoft.com/sqlserver/2004/bulkload/format" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 <RECORD>
  <FIELD ID="1" xsi:type="CharTerm" TERMINATOR="\t" MAX_LENGTH="24" COLLATION="SQL_Latin1_General_CP1_CI_AS"/>
  <FIELD ID="2" xsi:type="CharTerm" TERMINATOR="\t" MAX_LENGTH="150" COLLATION="SQL_Latin1_General_CP1_CI_AS"/>
  <FIELD ID="3" xsi:type="CharTerm" TERMINATOR="\t" MAX_LENGTH="150" COLLATION="SQL_Latin1_General_CP1_CI_AS"/>
  <FIELD ID="4" xsi:type="CharTerm" TERMINATOR="\t" MAX_LENGTH="20" COLLATION="SQL_Latin1_General_CP1_CI_AS"/>
  <FIELD ID="5" xsi:type="CharTerm" TERMINATOR="\r\n" MAX_LENGTH="12" COLLATION="SQL_Latin1_General_CP1_CI_AS"/>
 </RECORD>
 <ROW>
  <COLUMN SOURCE="1" NAME="UID" xsi:type="SQLNCHAR"/>
  <COLUMN SOURCE="2" NAME="FNAME" xsi:type="SQLNCHAR"/>
  <COLUMN SOURCE="3" NAME="LNAME" xsi:type="SQLNCHAR"/>
  <COLUMN SOURCE="4" NAME="PHONE" xsi:type="SQLNCHAR"/>
  <COLUMN SOURCE="5" NAME="Target" xsi:type="SQLNCHAR"/>
 </ROW>
</BCPFORMAT>

Was ich wirklich brauchen: (xsi:type="CharFixed")

<?xml version="1.0"?>
<BCPFORMAT xmlns="http://schemas.microsoft.com/sqlserver/2004/bulkload/format" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<RECORD>
  <FIELD ID="1" xsi:type="CharFixed" LENGTH="3"/>
  <FIELD ID="2" xsi:type="CharFixed" LENGTH="3"/>
</RECORD>
<ROW>
  <COLUMN SOURCE="1" NAME="Field1" xsi:type="SQLCHAR" LENGTH="3"/>
  <COLUMN SOURCE="2" NAME="Field2" xsi:type="SQLCHAR" LENGTH="3"/>
</ROW>
</BCPFORMAT>
Können Sie nicht einfach Bearbeiten Sie die Datei, die erzeugt wird, so dass es hat, was Sie wollen? (ich.e ändern Sie die generierte Datei, so dass es verwendet CharFixed?)
Ja. Ich landete eine c# Funktion zum erstellen der Datei für mich. Ich bin jetzt gut, aber tvm für immer wieder bei mir.
Oh, ich sehe, Sie musste das tun, immer wieder für beliebige Tisch-designs.

InformationsquelleAutor kdelmonte | 2012-03-22

Schreibe einen Kommentar