Skip to main content

Använda bcp för att importera och exportera data från SQL Server

Import CSV file to SQL Server Database (April 2025)

Import CSV file to SQL Server Database (April 2025)
Anonim

Kommandot bulkkopiering (bcp) i Microsoft SQL Server ger dig möjligheten att infoga ett stort antal poster direkt från kommandoraden. Förutom att vara ett användbart verktyg för kommandoraden avicionados är bcp-verktyget ett kraftfullt verktyg för dem som försöker infoga data i en SQL Server-databas från en batchfil eller annan programmatisk metod. Det finns många sätt att få data till en databas, men bcp är den snabbaste när den är inställd med rätt parametrar.

BCP-syntax

Den grundläggande syntaxen för användning av bcp är:

BCP

där argumenten tar följande värden:

  • tABLE_NAME är det fullt kvalificerade namnet på bordet. Du kan till exempel använda inventory.dbo.fruits för att infoga poster i tabellen frukter som ägs av databasägaren i inventeringsdatabasen.
  • Riktning Indikerar om du vill importera ("in" -riktning) eller exportera ("utåtriktad") data.
  • Filnamn är hela sökvägen till filen. Du kan till exempel importera filen C: fruit inventory.txt.
  • alternativ tillåter dig att ange parametrar för bulkoperationen. Till exempel kan du ange det maximala antalet fel som tillåts med alternativet -m. Du kan också använda alternativet -x för att ange ett XML-filformat. Konsulter Microsofts bcp-dokumentation för en fullständig lista.

BCP-importexempel

För att sammanfatta det, föreställ dig att du har ett fruktbord i din databas och du vill importera alla poster från en textfil som sparats på din hårddisk till den databasen. Du skulle använda följande kommandosyntax för bcp:

bcp inventory.dbo.fruits i "C: fruit inventory.txt" -c -T

Detta ger följande utmatning:

C: > bcp inventory.dbo.fruits i "C: fruit inventory.txt" -c -T

Startkopiering …

36 rader kopieras.

Nätverkspaketstorlek (byte): 4096

Klocktid (ms.) Totalt: 16 Genomsnitt: (2250.00 rader per sek.)

C: >

Du kanske har märkt två nya alternativ på den här kommandoraden. Alternativet -c anger att filformatet för importfilen ska vara flikavgränsad text med varje post på en ny rad. Alternativet -T anger att bcp ska använda Windows-autentisering för att ansluta till databasen.

BCP Exportexempel

Du kan exportera data från din databas med bcp genom att ändra operativriktningen från "in" till "out". Du kan till exempel dumma innehållet i frukttabellen till en textfil med följande kommando:

bcp inventory.dbo.fruits ut "C: fruit inventory.txt" -c -T

Så här ser det på kommandoraden:

C: > bcp inventory.dbo.fruits out "C: frukt inventory.txt" -c -T

Startkopiering …

42 rader kopieras.

Nätverkspaketstorlek (byte): 4096

Klocktid (ms.) Totalt: 1 Genomsnitt: (42000.00 rader per sek.)

C: >

Det är allt som finns i kommandot bcp. Du kan använda det här kommandot från batchfiler eller andra program med åtkomst till kommandoraden DOS för att automatisera import och export av data från din SQL Server-databas.