sql >> Databasteknik >  >> RDS >> Sqlserver

Bulk infoga fält med fast bredd

Jag tror att du måste definiera en formatfil

t.ex.

BULK INSERT TableA FROM 'C:\Temp\TableA.txt'
WITH FORMATFILE = 'C:\Temp\Format.xml'
SELECT * FROM TableA

För att det ska fungera behöver du naturligtvis en formatfil.

Se här för allmän information om att skapa en:

Skapa en formatfil

Vid en gissning, från att titta på schemat, kan något sådant här göra det:

<?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>


  1. ListView Control Drag Drop Events Hantering

  2. Hur man får information om kompileringsfel i Oracle/TOAD

  3. MySQL:Hur får man längden på text i en kolumn

  4. Använd MySQL relationsdatabaser på Fedora 13