Tömeges betét (-SQL)
Neve az adatbázist, amelyben a megadott tábla vagy nézet. Ha nincs megadva, akkor feltételezzük, hogy a jelenlegi adatbázisban.
A tábla neve, vagy a diagram nézetet. Megjegyzés érv sémanév adott, ha az alapértelmezett séma a felhasználó a művelet végrehajtása tömeges import rendszer meghatározása tábla vagy nézet. Ha a séma nincs megadva, az alapértelmezett sémát végző felhasználót a tömeges import művelet eltér a séma a tábla vagy nézet, SQL Server hibaüzenetet jelenít meg, és tömeges import művelet meghiúsul.
A tábla neve vagy nézet, amely során hatalmas importálását. Csak jelzik azokat a nézeteket, amelyekben minden oszlop az azonos táblához. További információ a korlátozásokat, amikor adatokat tölt be a bemutatót cm. Az utasítás INSERT (-SQL).
A teljes elérési utat és a fájl nevét tartalmazó adatbázis behozni a megadott tábla vagy nézet adatait. BULK INSERT utasítás adatokat importálhat egy lemezt (a hálózat, floppy, merevlemez, és így tovább. D.).
data_file érv nem tartalmaz érvényes útvonalat a kiszolgáló SQL Server. Ha data_file argumentum egy távoli, adja meg a UNC nevét. UNC-név formájában \\ Systemname \ Megosztásnév \ útvonal \ fájlnév. Például \\ SystemX \ DiskZ \ Értékesítés \ UPDATE.TXT.
Meghatározza a sorok száma egy csomagban. Minden csomag másolása a szerver egyetlen tranzakció keretében. SQL Server véglegesíti, vagy vissza az ügyletet az egyes csomagokat. Alapértelmezésben minden adatot tartalmaz a fájl átvitelre egy csomagban. További információ a teljesítmény problémák, lásd. A „Megjegyzések”, később ebben a fejezetben.
Azt jelzi, hogy ha a nagy import művelet hogy ellenőrizze az összes megszorítások a cél tábla vagy nézet. Anélkül CHECK_CONSTRAINTS paramétert és minden korlátozás FOREIGN KEY CHECK kimarad, és befejezésekor a működést korlátozó tábla van megjelölve megbízhatatlan.
Korlátozások EGYEDI, elsődleges kulcs, és NOT NULL ellenőrzött egyébként.
Előbb vagy utóbb, akkor ellenőriznie kell az egész táblát, hogy a határértékek. Ha a tábla előtt tömeges import művelet nem volt üres, a költség újbóli ellenőrzés korlátok meghaladhatja a költségek kérelmet a CHECK megszorítás kiterjesztés adatokat.
Letiltása korlátok (alapértelmezett beállítás) is szükség lehet olyan helyzetekben, amikor a bemeneti adatok sorokat tartalmazza, amelyek sértik ezeket a korlátozásokat. Importálhat adatokat, ha megszakad ellenőrzik a megszorításokat az ellenőrzést, majd használja-SQL nyilatkozatok, hogy távolítsa el az érvénytelen adatokat.
A saját adatbázis típus, kivéve char típusú oszlopokat. varchar, és szöveg. ahol az adatok tárolása Unicode-ban. widenative adatok típusa által létrehozott fájl tömeges import adatokat az SQL Server segítségével a BCP segédprogramot.
widenative típus nyújt nagyobb teljesítményt, mint a widechar. Ha az adatok fájl tartalmazza a kiterjesztett karakterek ANSI, adja meg az értéket widenative.
Jel azt jelzi, a végén a területen használt adatok és fájltípus char widechar. Alapértelmezésben a jele a végén a mező a tab karaktert (\ t). További információért lásd. Hogyan határozzuk meg a végén a területen, és sorban jellemzői.
Megadja az első sor száma letölteni. Az alapértelmezett érték - az első sorban a megadott adatfájl. FIRSTROW argumentumértékeket kezdődik 1.
Az attribútum FIRSTROW nem célja, hogy hagyja oszlop fejlécét. Fejléc átugrása nem támogatja az utasítás BULK INSERT. Ha kihagyom sorok komponens SQL Server Database Engine kereséseket, csak a végén a mező jellemzőket, és nem ellenőrzi az adatokat a hiányzó sor a mezőket.
Azt jelzi, hogy betétes flip-flop lesz végre tömeges import vannak meghatározva a céltábla. Ha az INSERT művelet kiváltó meghatározott cél tábla, akkor működik minden letöltött csomagot.
Ha FIRE_TRIGGERS paraméter nincs megadva, Insert kiváltó nem teljesülnek.
Meghatározza a teljes elérési útját a fájl formátumát. formátumú fájl írja le az adatállományban - információkat, amelyeket a BCP segédprogram ugyanazon tábla vagy nézet. És szánják esetben, ha:
adatállomány tartalmaz több vagy kevesebb oszlop van, mint tábla vagy nézet;
az oszlopok vannak elrendezve más sorrendben;
különböző oszlop elválasztó;
Ez azt jelzi, hogy az érték vagy azonosító értékeket az importált adatállományban kell használni az oszlop azonosítókat. Ha KEEPIDENTITY nincs megadva, a személyazonosság oszlop értékei ellenőrzik, de nem importált és az SQL Server automatikusan hozzárendeli az egyedi értékeket alapul kezdeti érték és a növekmény létrehozásakor megadott asztalra. Ha az adatok fájl nem tartalmaz értékeket a személyazonosság oszlop adja meg a fájl formátum, mely az identitás oszlop a tábla vagy nézet, ha az importáló adatokat kihagyja. Ebben az esetben, az SQL Server automatikusan hozzárendeli egyedi értéket az oszlop. További információkat. Lásd DBCC CHECKIDENT (-SQL).
Meghatározza, hogy az üres oszlopok tömeges import kell rendelni NULL értékek helyett az alapértelmezett értékek vannak rendelve ezek az oszlopok. További információért lásd. A megtakarítás NULL értékeket, vagy használja az alapértelmezett értékek tömeges adatok importálását.
Meghatározza hozzávetőleges számát kilobájt adatot a csomagot, mint a kilobytes_per_batch. Alapértelmezésben KILOBYTES_PER_BATCH érték ismeretlen. További információ a teljesítmény problémák, lásd. A „Megjegyzések”, később ebben a fejezetben.
Meghatározza az utolsó sorban a csomagtartó. Az alapértelmezett érték 0, ami az utolsó sorban az említett adatfájlt.
Ez meghatározza a maximális számú szintaktikai hibák lehetővé tette az adatfájlt, mielőtt a tömeges import művelet megszakad. Minden karakterlánc, amelynek import tömeges import végezhetők vezetjük, és ezt tartják az egyik hiba. Ha max_errors argumentum nincs megadva, akkor az alapértelmezett érték 10.
MAX_ERRORS lehetőség nem vonatkozik ellenőrzik a megszorításokat, vagy átalakítani a pénz és bigint adattípusok.
Ez meghatározza, hogyan kell rendezni az adatokat a fájlból. importálja tömeg termelékenység növekszik, ha az importált adatok szerint rendezett fürtözött index táblázat (ha van ilyen). Ha az adatállományt rendezve más sorrendben, azaz olyan sorrendben eltérő sorrendben a fürtözött index gombot, vagy ha a tábla nem fürtözött index, a megbízás nem kerül feldolgozásra. A céltábla meg kell határozni az oszlop nevek. Alapértelmezésben a bulk insert úgy véli, hogy az adatállomány nincs rendezve. Az optimális tömeges import SQL Server is ellenőrzi a válogatás az importált adatokat.
Placeholder jelezve, hogy megadható több oszlopot.
Jelzi a hozzávetőleges sorok számát az adatállományban.
Alapértelmezésben az összes adatot a fájl küldeni a szerver egy tranzakció, és a sorok száma a csomagban optimalizáló ismeretlen kéréseket. Ha megadja ROWS_PER_BATCH érv (amelynek értéke> 0), a kiszolgáló használja ezt az értéket, hogy optimalizálja a tömeges import működését. A megadott érték ROWS_PER_BATCH kell körülbelül egyezik a tényleges sorok számát. További információ a teljesítmény problémák, lásd. A „Megjegyzések”, később ebben a fejezetben.
Ez jelzi a vonal terminátor használt adatok és fájltípus char widechar. Alapértelmezésben a terminátor szimbólum string \ r \ n (soremelés karakter). További információért lásd. Hogyan határozzuk meg a végén a területen, és sorban jellemzői.
Rámutat, hogy szükség van egy tábla szintű zár kérelem végrehajtása tömeges import. Ha a tábla nem indexeli és megadott kulcsszó TABLOCK betöltése, az asztal lehet végezni párhuzamosan több ügyfél. Alapértelmezésben a zár működését határozza meg paraméterként asztal asztal zár ömlesztett rakomány. Lock elvégzésére tömeges behozatala idő jelentősen javítja a teljesítményt, csökkenti állítása zár asztalra. További információ a teljesítmény problémák, lásd. A „Megjegyzések”, később ebben a fejezetben.
Meghatározza fájl gyűjtésére használt sorok formázási hibákat nem alakítható OLE DB sorhalmaz. Ezek a sorok másolása nem változott az adatfájlt a hiba fájl.
error fájl jön létre a színpadon a parancsot. Ha már létezik, hiba történik. Továbbá, a szabályozás kiterjesztésű fájl ERROR.txt. amely hivatkozásokat tartalmaz az egyes sorokban a hibafájlt és diagnosztikai információkat. A hiba kijavítása után ezek az adatok újra lehet tölteni.
Összehasonlítás BULK INSERT utasítás, INSERT utasítással. SELECT * FROM OPENROWSET (BULK.) És a BCP parancs, lásd. Szakasz Tömeges Import és Export Tömeges műveletek.
További információk találhatók az adatok tömeges import, mint követelményeket, amikor adatokat importálni a CSV-fájlban. Lásd az adatok előkészítése tömeges export vagy import.
BULK INSERT utasítás lehet végrehajtani egy felhasználó tranzakciót. Visszagörgetéssel felhasználói tranzakciós tartalmazó BULK INSERT utasítást a BATCHSIZE, generáló import adatokat egy táblázatban vagy képviseletet több csomagból, ez okozza visszaállítását minden csomagot küldött az SQL Server.
További információt, ha egy sor kerül beillesztésre tranzakciókat rögzítik a tranzakciós napló során végrehajtott tömeges import, lásd. Szakasz Feltétel minimum referenciatömegük import adatait.
saját adatok bemutatása float vagy valós típusú érvényesek;
Unicode adatok még hosszú.
Az adatok rossz formátumban, amely a korábbi verziók az SQL Server töltik, a tömeges import művelet nem hajtható végre. A korábbi verziók az SQL Server hiba nem fordul elő, amíg az ügyfél nem tesz kísérletet, hogy hozzáférjen az érvénytelen adatokat. A szigorúbb ellenőrzés csökkenti annak valószínűségét, vészhelyzetek során egy adatkérés után a tömeges import.
korlátozások
Ha a fájl formátum a tömeges beszúrás nyilatkozat megadhatja 1024 területeken. Ez az érték egybeesik a maximális számú oszlop a táblázatban. Amikor a BULK INSERT utasításban az adatállomány, amely több mint 1024 területeken keletkezett hiba BCP 4822. A program nem rendelkezik ez a korlátozás, így az adatok fájlok, amelyek több mint 1024, a mezőben a BCP parancsot.
teljesítmény problémák
Különbségek miatt a számítógépek ajánlott kipróbálni a munkaterhelés különböző méretű csomagok, hogy meghatározzák a legjobb megoldás.
Tömeges export vagy import SQLXML dokumentumok
A tömeges export vagy import SQLXML adatokat, használja az alábbi típusú adatok formátumú fájlba.
Azonban a BULK INSERT utasítást nem lesz képes importálni az adatokat közvetlenül az asztal t_float. mert a második oszlop a C2 adattípust tizedes. Tehát szükség van egy fájl formátum. Az, hogy egy úszó adatok, tudományos jelöléssel kell összehasonlítani a decimális formátumban oszlop c2.
Következő SQLFLT8 formátumú fájl adatainak felhasználásával típus megfelelő a második adatmező a második oszlop:
Ahhoz, hogy ezt formátumú fájl (C file: \ t_floatformat-c-xml.xml) ha importál a vizsgálati adatok a táblát, futtassa a következő Transact-SQL-utasítás:
Importálni identity értéket az adatállományt megadott KEEPIDENTITY.
Felhatalmazó Biztonsági fiókok (Megszemélyesítési)
Ha az SQL Server felhasználó bejelentkezett keresztül Hitelesítési Windows, csak hozzáfér azokhoz a fájlokhoz, amelyek hozzáférhetők veszi a felhasználó, függetlenül attól, hogy a biztonsági profilja az SQL Server folyamatot.
Ha a sqlcmd vagy osql BULK INSERT utasítást a program elindul egy számítógépen, adatokat behelyezés történik SQL Server egy másik számítógépen, és data_file érv arra utal, hogy a harmadik számítógép segítségével UNC-útvonal, hiba 4861 előfordulhat.
Hogy oldja meg ezt a problémát, az SQL Server hitelesítés és az SQL Server bejelentkezési hogy az SQL Server folyamat fiókjába a biztonsági profilt, illetve beállíthatja a Windows delegálni biztonsági számlák. További információ arról, hogyan lehet egy felhasználói fiókot hozzáférhető a felhatalmazás, lásd. Segítség a Windows.
További információ az említett és egyéb biztonsági kérdésekről, amikor a tömeges INSERT utasítás cm. Szakaszban Mass adatimportálást kézi BULK INSERT vagy OPENROWSET (ömlesztve.).