Adatok előkészítése tömeges exportálásra vagy importálásra

A következőkre vonatkozik:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics

Ez a szakasz a tömeges exportálási műveletek tervezésének szempontjait és a tömeges importálási műveletek követelményeit ismerteti.

Megjegyzés:

Ha nem tudja, hogyan formázhat adatfájlokat tömeges importálásra, a bcp segédprogrammal adatokat exportálhat a táblából egy adatfájlba. A fájl egyes adatmezőinek formázása az adatoknak a megfelelő táblaoszlopba történő tömeges importálásához szükséges formázást jeleníti meg. Használja ugyanazt az adatformátumot az adatfájl mezőihez.

Az adatfájl formátumával kapcsolatos szempontok a tömeges exportáláshoz

Mielőtt tömeges exportálási műveletet hajt végre a bcp paranccsal, vegye figyelembe a következőket:

  • Amikor az adatokat fájlba exportálja, a bcp parancs automatikusan létrehozza az adatfájlt a megadott fájlnév használatával. Ha a fájlnév már használatban van, az adatfájlba tömegesen másolt adatok felülírják a fájl meglévő tartalmát.

  • A táblázatból vagy nézetből adatfájlba történő tömeges exportáláshoz engedélyre van szükség SELECT a tömegesen másolt táblára vagy nézetre.

  • Az SQL Server párhuzamos vizsgálatokkal is lekérheti az adatokat. Ezért az SQL Server egy példányából táblasorok tömeges exportálása esetén általában nem garantált, hogy azok bármilyen meghatározott sorrendben legyenek az adatfájlban. Ha azt szeretné, hogy a tömegesen exportált táblasorok egy adott sorrendben jelenjenek meg az adatfájlban, a lekérdezési beállítással tömegesen exportálhat egy lekérdezésből, és megadhat egy záradékot ORDER BY .

A tömeges importálás adatfájl-formátumra vonatkozó követelményei

Adatok adatfájlból való importálásához a fájlnak meg kell felelnie az alábbi alapvető követelményeknek:

  • Az adatoknak sor- és oszlopformátumban kell lenniük.

Megjegyzés:

Az adatfájl szerkezetének nem kell megegyeznie az SQL Server-tábla szerkezetével, mert az oszlopok kihagyhatók vagy átrendezhetők a tömeges importálási folyamat során.

  • Az adatfájl adatainak támogatott formátumban kell lenniük, például karakter vagy natív formátumban.

  • Az adatok lehetnek karakteres vagy natív bináris formátumúak, beleértve a Unicode-ot is.

  • Ha bcp-parancs , BULK INSERT utasítás vagy INSERT ... SELECT * FROM OPENROWSET(BULK...) utasítás használatával szeretne adatokat importálni, a céltáblának már léteznie kell.

  • Az adatfájl minden mezőjének kompatibilisnek kell lennie a céltábla megfelelő oszlopával. Egy int mező például nem tölthető be datetime oszlopba. További információ: Adatformátumok tömeges importáláshoz vagy tömeges exportáláshoz (SQL Server) és kompatibilitási adatformátumok megadása a bcp (SQL Server) használatakor.

    Megjegyzés:

    Ha a teljes fájl helyett egy adatfájlból importálandó sorok egy részhalmazát szeretné megadni, használhat egy bcp parancsot a -F <first_row> kapcsolóval és/vagy a -L <last_row> kapcsolóval. További információ: bcp Segédprogram.

  • Ha rögzített hosszúságú vagy rögzített szélességű mezőkkel szeretne adatokat importálni az adatfájlokból, használjon formátumfájlt. További információ: XML Format Files (SQL Server).

  • Az SQL Server 2017-től kezdve (14.x) egy CSV-fájl használható adatfájlként az adatok SQL Serverbe történő tömeges importálásához. A CSV-fájl mezőelválasztójának nem kell vesszőnek (,) lennie. A CSV-fájlnak meg kell felelnie a következő korlátozásoknak:

Ezenkívül az adatok tömeges importálása egy adatfájlból egy táblába a következő követelményekkel rendelkezik:

  • A felhasználóknak rendelkezniük kell INSERT és SELECT engedélyekkel a táblán. A felhasználóknak engedélyre is szükségük van ALTER TABLE , ha olyan beállításokat használnak, amelyek adatdefiníciós nyelvi (DDL-) műveleteket igényelnek, például letiltják a korlátozásokat.

  • Ha adatokat tömegesen importál a BULK INSERT vagy INSERT ... SELECT * FROM OPENROWSET(BULK...) használatával, akkor az adatfájlnak elérhetőnek kell lennie az olvasási műveletekhez az SQL Server-folyamat biztonsági profilja által (ha a felhasználó belép az SQL Server megadott bejelentkezésével), vagy a delegált biztonság alatt használt Microsoft Windows bejelentkezéssel. Emellett a felhasználónak engedéllyel kell rendelkeznie ADMINISTER BULK OPERATIONS a fájl olvasásához.

Megjegyzés:

A particionált nézetbe történő tömeges importálás nem támogatott, és az adatok particionált nézetbe történő tömeges importálása sikertelen.