Bcp este cel mai rapid mod de a obține date într-o bază de date
Comanda de copiere bulk (bcp) a Microsoft SQL Server vă oferă posibilitatea de a introduce un număr mare de înregistrări direct din linia de comandă. Pe lângă faptul că este un instrument util pentru aficionados de linie de comandă, utilitarul bcp este un instrument puternic pentru cei care încearcă să introducă datele într-o bază de date SQL Server dintr-un fișier batch sau altă metodă programatică. Există o mulțime de moduri de a obține date într-o bază de date, dar bcp este cel mai rapid când este configurat cu parametrii potriviți.
bpp Sintaxa
Sintaxa de bază pentru utilizarea bcp este:
bcpunde argumentele iau următoarele valori:
- Nume_tabel este numele complet calificat al tabelului. De exemplu, este posibil să utilizați inventory.dbo.fruits pentru a insera înregistrările în tabelul fructelor deținut de proprietarul bazei de date în baza de date a inventarului.
- Direcția indică dacă doriți să importați date (direcția "în") sau export (direcția "out").
- Numele fișierului este calea completă la fișier. De exemplu, ați putea importa fișierul C: \ fruit \ inventory.txt.
- Opțiunile vă permit să specificați parametrii pentru operația în vrac. De exemplu, puteți specifica numărul maxim de erori admise cu opțiunea -m. De asemenea, puteți utiliza opțiunea -x pentru a specifica un format de fișier XML. Consultați documentația bcp a Microsoft pentru o listă completă.
Exemplu de import bcp
Pentru a pune totul împreună, imaginați-vă că aveți o tabelă de fructe în baza de date inventar și doriți să importați toate înregistrările dintr-un fișier text stocat pe hard disk în baza de date respectivă. Ați folosi următoarea sintaxă de comandă bcp:
bcp inventory.dbo.fruits în "C: \ fruit \ inventory.txt" -c -TAceasta produce următoarea ieșire:
C: \> bcp inventory.dbo.fructe în "C: \ fruit \ inventory.txt" -c -T Pornire copie ... 36 rânduri copiate. Dimensiunea pachetului de rețea (octeți): 4096 Ceasul Timp (ms.) Total: 16 În medie: (2250,00 rânduri pe secundă) C: \>S-ar putea să fi observat două opțiuni noi pe acea linie de comandă. Opțiunea -c specifică faptul că formatul fișierului fișierului de import va fi text delimitat de tab-uri cu fiecare înregistrare pe o linie nouă. Opțiunea -T specifică faptul că bcp ar trebui să utilizeze autentificarea Windows pentru a se conecta la baza de date.
Exemplu de export bcp
Puteți exporta datele din baza de date cu bcp schimbând direcția operației de la "in" la "out". De exemplu, puteți să anulați conținutul tabelului de fructe într-un fișier text cu următoarea comandă:
bcp inventory.dbo.fruits afișează "C: \ fruit \ inventory.txt" -c -TIată cum arată acest lucru pe linia de comandă:
C: \> bcp inventory.dbo.fruits afișează "C: \ fruit \ inventory.txt" -c -T Pornire copie ... 42 rânduri copiate. Dimensiunea pachetului de rețea (octeți): 4096 Ceas Timp (ms.) Total: 1 În medie: (42000,00 rânduri pe secundă) C: \>Asta e tot ce este la comanda bcp. Puteți utiliza această comandă din fișiere batch sau alte programe cu acces la linia de comandă DOS pentru a automatiza importul și exportul de date din baza de date SQL Server.