Importul și exportul datelor SQL Server din linia de comandă cu Bcp

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:

bcp

unde argumentele iau următoarele valori:

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 -T

Aceasta 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 -T

Iată 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.