aspose.info
SV

BCP - SQL Server Bulk Copy File Format

Uppdaterad

Vad är en BCP fil?

BCP (Bulk Copy Format) är Microsoft SQL Servers tekniska dataformat som definierar datastrukturer för att lagra olika databasdatatypvärden för import/export. Formatet definierar helt tolkningen av varje datakolumn så att uppsättningen värden som anges i datafilen kan läsas. Verktyget BCP använder BCP-filformatet för att läsa data från en sådan fil och identifiera den.

BCP filformat

BCP-formatfilen är ett XML-dokument som definierar kolumnordningen, namnet och datatypen. Det låter användare importera/exportera stora mängder data från datafil som anger dessa fält. Detta är användbart vid massimport av datavärden från datafiler. Antalet och ordningen på datafälten i datafilen kan skilja sig från de i måltabellens kolumner. Det är då BCP-dataformatfilen kommer till hjälp genom att ange ordning och typ av kolumner för att importera data.

Formatfilens struktur representeras i följande format.

<BCPFORMAT ...>
    <RECORD>
       <FIELD ID = "fieldID" xsi:type = "fieldType" [...] />
    </RECORD>
    <ROW>
       <COLUMN SOURCE = "fieldID" NAME = "columnName" xsi:type = "columnType" [...]  />
    </ROW>
 </BCPFORMAT>

BCP-datatyper

DatatypOmfångRepresentation
BigInt-263 (-9,223,372,036,854,775,808) till 263-1 (9,223,372,036,854,775,807)BigInt = ["-"]1*19DIGIT
Binär1 till 8000 bytehexadecimalkodat Unicode-strängformat Binary = 32000OCTET
Bit0 eller 1enkel Unicode-sträng Bit = “0” / “1”
Char1 till 8000Unicode String Format, Char = 16000OCTET
CLRUDTVarBinaryCLRUDT = 0*nOCTET med n = 4 x (2,147,483,647)
Datum0001-01-01 till 9999-12-31ÅÅÅÅ-MM-DD strängformat
DatumTid1753-01-01 00:00:00.000 till 9999-12-31 23:59:59.997Unicode ÅÅÅÅ-MM-DD tt:mm:ss[.nnn] strängformat
DateTime20001-01-01 00:00:00.0000000 till 9999-12-31 23:59:59.9999999.Unicode ÅÅÅÅ-MM-DD hh:mm:ss[.nnnnnn] strängformat
DateTimeOffset0001-01-01 00:00:00.0000000 till 9999-12-31 23:59:59.9999999 i tidszonen Coordinated Universal Time (UTC)Unicode ÅÅÅÅ-MM-DD hh:mm:ss[.nnnnnn] [{+
Decimal-1038 + 1 till 1038 – 1Unicode-strängformat Decimal = ["-"] 0*38DIGIT ["."0*38DIGIT]
Float-1,79E+308 till -2,23E-308; 0; från 2.23E-308 till 1.79E+308Unicode-strängformat
Bildsekvens av byte som sträcker sig från 0 till 231 – 1 (2 147 483 647)hexadecimalkodat Unicode-strängformat
Int-231 (-2,147,483,648) till 231 – 1 (2,147,483,647)Unicode-strängformat

Referenser

Se även