Bcp és la manera més ràpida d'obtenir dades en una base de dades
La comanda de còpia massiva (bcp) de Microsoft SQL Server us ofereix la possibilitat d'inserir un gran nombre de registres directament des de la línia de comandaments. A més de ser una eina útil per als aficionats a la línia de comandaments, la utilitat bcp és una eina poderosa per a aquells que busquen inserir dades en una base de dades de SQL Server des d'un fitxer per lots o un altre mètode programàtic. Hi ha moltes maneres d'obtenir dades en una base de dades, però la bcp és la més ràpida quan es configura amb els paràmetres adequats.
Sintaxi bcp
La sintaxi bàsica per utilitzar bcp és:
bcpon els arguments prenen els següents valors:
- Table_name és el nom complet de la taula. Per exemple, podeu utilitzar inventory.dbo.fruits per inserir registres a la taula de fruites propietat del propietari de la base de dades d'inventari.
- La direcció indica si voleu importar ("en" direcció) o exportar (dades "fora").
- File_name és la ruta completa del fitxer. Per exemple, podeu importar el fitxer C: \ fruit \ inventory.txt.
- Les opcions us permeten especificar paràmetres per al funcionament massiu. Per exemple, podeu especificar el nombre màxim d'errors permesos amb l'opció -m. També podeu utilitzar l'opció -x per especificar un format de fitxer XML. Consulteu la documentació bcp de Microsoft per obtenir una llista completa.
Exemple d'importació bcp
Per posar-ho tot junts, imagineu que teniu una taula de fruites a la vostra base de dades d'inventari i voleu importar tots els registres d'un fitxer de text emmagatzemat al vostre disc dur en aquesta base de dades. Usaríeu la següent sintaxi de l'ordre bcp:
bcp inventory.dbo.fruits a "C: \ fruit \ inventory.txt" -c -TAixò produeix la següent sortida:
C: \> bcp inventory.dbo.fruits a "C: \ fruit \ inventory.txt" -c -T Començant la còpia ... S'han copiat 36 files. Mida del paquet de xarxa (bytes): 4096 Temps de rellotge (ms.) Total: 16 Mitjana: (2250.00 files per segon) C: \>És possible que hàgiu notat dues noves opcions en aquesta línia d'ordres. L'opció-c especifica que el format del fitxer d'importació serà el text delimitat per tabulació amb cada registre en una nova línia. L'opció -T especifica que bcp hauria d'utilitzar l'autenticació de Windows per connectar-se a la base de dades.
Exemple d'exportació bcp
Podeu exportar dades de la vostra base de dades amb bcp canviant la direcció de l'operació des de "in" to "out". Per exemple, podeu enviar el contingut de la taula fruit a un fitxer de text amb el següent comandament:
bcp inventory.dbo.fruits "C: \ fruit \ inventory.txt" -c-TA continuació s'explica com es veu a la línia d'ordres:
C: \> bcp inventory.dbo.fruits out "C: \ fruit \ inventory.txt" -c -T Començant la còpia ... S'han copiat 42 files. Mida de paquet de xarxa (bytes): 4096 Temps de rellotge (ms.) Total: 1 Mitjana: (42000.00 files per segon) C: \>Això és tot per a l'ordre bcp. Podeu utilitzar aquesta ordre des de fitxers per lots o altres programes que tinguin accés a la línia de comandaments DOS per automatitzar la importació i exportació de dades des de la vostra base de dades SQL Server.