Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Ez a cikk azt ismerteti, hogyan hozhat létre formátumfájlt egy adott táblához a bcp segédprogram használatával. A formátumfájl a megadott adattípuson (-n, -c, -wvagy -N) és a tábla- vagy nézethatárolókon alapul.
Ha tömegesen importál egy SQL Server-táblába, vagy tömegesen exportál adatokat egy táblából, a formátumfájlokat rugalmas rendszerként használhatja adatfájlok írására. A formátumfájlok használatához kevés vagy semmilyen szerkesztésre van szükség ahhoz, hogy megfeleljenek más adatformátumoknak, vagy más szoftverprogramok adatfájljait olvashassák.
Korlátozások
A formátumfájl olvasásához használt bcp segédprogram (bcp.exe) verziójának meg kell egyeznie a formátumfájl létrehozásához használt verzióval vagy újabb verzióval. Az SQL Server 2016 (13.x) bcp például beolvashat egy 12.0-s formátumú fájlt, amelyet az SQL Server 2014 (12.x) bcphoz létre, de az SQL Server 2014 (12.x) bcp nem tudja olvasni az SQL Server 2016 (13.x) bcpáltal létrehozott 13.0-s formátumú fájlt.
Jegyzet
Ez a szintaxis, beleértve a tömeges beszúrást, nem támogatott az Azure Synapse Analyticsben. Az Azure Synapse Analyticsben és más felhőalapú adatbázisplatform-integrációkban az adatáthelyezést az Azure Data Factory COPY utasításánakvagy T-SQL-utasítások, például a COPY INTO és a PolyBasehasználatával végezheti el.
Formátumfájlok létrehozása
Az SQL Server kétféle formátumfájlt támogat: nem XML- és XML-formátumot. A nem XML formátum az SQL Server korábbi verziói által támogatott eredeti formátum.
Az XML- és a nem XML formátumú fájlok általában felcserélhetők. Javasoljuk azonban, hogy xml-szintaxist használjon a fájlok formázásához, mivel ezek számos előnyt biztosítanak a nem XML formátumú fájlokkal szemben.
A cikkben szereplő kódminták a AdventureWorks2025 vagy AdventureWorksDW2025 mintaadatbázist használják, amelyet a Microsoft SQL Server-minták és közösségi projektek kezdőlapjáról tölthet le. Az Adventure Works Cycles egy kitalált gyártó vállalat, amely az adatbázis-fogalmakat és forgatókönyveket mutatja be.
XML-formátumfájl létrehozása
Ha bcp parancsot szeretne használni egy formátumfájl létrehozásához, adja meg a format argumentumot, és adatfájl elérési útja helyett használja a nul. A format beállításhoz mindig szükség van a -f beállításra, és xml formátumú fájl létrehozásához meg kell adnia a -x beállítást is, például bcp <table_or_view> format nul -f <format_file_name> -x.
Az XML formátumú fájlok megkülönböztetéséhez javasoljuk, hogy a .xml fájlnévkiterjesztésként használja, például MyTable.xml.
Az XML-formátumú fájlok szerkezetéről és mezőiről további információt XML-formátumfájlok (SQL Server)című témakörben talál.
Példák
Ez a szakasz az alábbi példákat tartalmazza, amelyek bemutatják, hogyan használható bcp parancsok XML-formátumú fájl létrehozásához. A HumanResources.Department táblázat négy oszlopot tartalmaz: DepartmentID, Name, GroupNameés ModifiedDate.
Egy. XML-formátumfájl létrehozása karakteradatokhoz
Az alábbi példa egy XML formátumú fájlt hoz létre Department.xmla HumanResources.Department táblához. A formátumfájl karakteradat-formátumokat és nem alapértelmezett mezővégződőt (,) használ. A létrehozott formátumfájl tartalma a parancs után jelenik meg.
A bcp parancs a következő minősítőket tartalmazza.
| Selejtezők | Leírás |
|---|---|
format nul -x -f <format_file> |
Megadja az XML formátumfájlt. |
-c |
Karakteradatokat ad meg. |
-t, |
Vesszőt (,) ad meg mezőelválasztóként.Megjegyzés: Ha az adatfájl az alapértelmezett terminátort ( \t) használja, a -t kapcsoló szükségtelen. |
-T |
Megadja, hogy a bcp segédprogram megbízható kapcsolattal csatlakozik az SQL Serverhez integrált biztonság használatával. Ha nincs megadva -T, meg kell adnia -U és -P a sikeres bejelentkezéshez. |
A Windows parancssorában adja meg a következő bcp parancsot:
bcp AdventureWorks2022.HumanResources.Department format nul -c -x -f Department-c.xml -t, -T
A létrehozott formátumfájl (Department-c.xml) a következő XML-elemeket tartalmazza:
<?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="," MAX_LENGTH="7"/>
<FIELD ID="2" xsi:type="CharTerm" TERMINATOR="," MAX_LENGTH="100" COLLATION="SQL_Latin1_General_CP1_CI_AS"/>
<FIELD ID="3" xsi:type="CharTerm" TERMINATOR="," MAX_LENGTH="100" COLLATION="SQL_Latin1_General_CP1_CI_AS"/>
<FIELD ID="4" xsi:type="CharTerm" TERMINATOR="\r\n" MAX_LENGTH="24"/>
</RECORD>
<ROW>
<COLUMN SOURCE="1" NAME="DepartmentID" xsi:type="SQLSMALLINT"/>
<COLUMN SOURCE="2" NAME="Name" xsi:type="SQLNVARCHAR"/>
<COLUMN SOURCE="3" NAME="GroupName" xsi:type="SQLNVARCHAR"/>
<COLUMN SOURCE="4" NAME="ModifiedDate" xsi:type="SQLDATETIME"/>
</ROW>
</BCPFORMAT>
A formátumfájl szintaxisáról további információt XML-formátumfájlok (SQL Server)című témakörben talál. További információ a karakteradatokról: Karakterformátum használata adatok importálásához vagy exportálásához (SQL Server).
B. XML-formátumfájl létrehozása natív adatokhoz
Az alábbi példa egy XML formátumú fájlt hoz létre Department-n.xmla HumanResources.Department táblához. A formátumfájl natív adattípusokat használ. A létrehozott formátumfájl tartalma a parancs után jelenik meg.
A bcp parancs a következő minősítőket tartalmazza.
| Selejtezők | Leírás |
|---|---|
format nul -x -f <format_file> |
Megadja az XML formátumfájlt. |
-n |
Natív adattípusokat határoz meg. |
-T |
Megadja, hogy a bcp segédprogram megbízható kapcsolattal csatlakozik az SQL Serverhez integrált biztonság használatával. Ha nincs megadva -T, meg kell adnia -U és -P a sikeres bejelentkezéshez. |
A Windows parancssorában adja meg a következő bcp parancsot:
bcp AdventureWorks2022.HumanResources.Department format nul -x -f Department-n.xml -n -T
A létrehozott formátumfájl (Department-n.xml) a következő XML-elemeket tartalmazza:
<?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="NativeFixed" LENGTH="2"/>
<FIELD ID="2" xsi:type="NCharPrefix" PREFIX_LENGTH="2" MAX_LENGTH="100" COLLATION="SQL_Latin1_General_CP1_CI_AS"/>
<FIELD ID="3" xsi:type="NCharPrefix" PREFIX_LENGTH="2" MAX_LENGTH="100" COLLATION="SQL_Latin1_General_CP1_CI_AS"/>
<FIELD ID="4" xsi:type="NativeFixed" LENGTH="8"/>
</RECORD>
<ROW>
<COLUMN SOURCE="1" NAME="DepartmentID" xsi:type="SQLSMALLINT"/>
<COLUMN SOURCE="2" NAME="Name" xsi:type="SQLNVARCHAR"/>
<COLUMN SOURCE="3" NAME="GroupName" xsi:type="SQLNVARCHAR"/>
<COLUMN SOURCE="4" NAME="ModifiedDate" xsi:type="SQLDATETIME"/>
</ROW>
</BCPFORMAT>
A formátumfájl szintaxisáról további információt XML-formátumfájlok (SQL Server)című témakörben talál. Azok számára, akik a natív formátum használatáról szeretnének többet megtudni, lásd Adatok importálása vagy exportálása (SQL Server).
Adatmezők leképezése táblázatoszlopok számára
A bcpáltal létrehozott formátumfájl az összes táblázatoszlopot sorrendben írja le. Módosíthatja a formátumfájlt a táblázatsorok átrendezéséhez vagy kihagyásához. A formátumfájlokat testreszabhatja olyan adatfájlra, amelynek mezői nem képezhetők le közvetlenül a táblaoszlopok közé. További információkért lásd a következő cikkeket:
- Táblaoszlop (SQL Server) kihagyása formátumfájllal
- Adatmező (SQL Server) kihagyása formátumfájllal
- Táblázatoszlopok adatfájlmezőkbe (SQL Server) való leképezése formátumfájllal