Microsoft SQL Serverのバルク・コピー(bcp)コマンドは、コマンド行から大量のレコードを直接挿入する機能を提供します。 bcpユーティリティは、コマンドラインからの愛好家にとって有用なツールであるだけでなく、バッチファイルやその他のプログラム的な方法からSQL Serverデータベースにデータを挿入しようとする人にとっては強力なツールです。データをデータベースに取り込む方法はたくさんありますが、bcpは適切なパラメータで設定すると最も高速です。
BCP構文
bcpを使用するための基本的な構文は次のとおりです。
bcp
引数には次の値が入ります。 すべてをまとめるには、インベントリデータベースにフルーツテーブルがあり、ハードドライブに保存されているテキストファイルからすべてのレコードをそのデータベースにインポートするとします。次のbcpコマンド構文を使用します。 bcp inventory.dbo.fruits in "C: fruit inventory.txt" -c -T
これにより、次の出力が生成されます。 C:> bcp inventory.dbo.fruits in "C: fruit inventory.txt" -c -T
コピーを開始中…
36行がコピーされます。
ネットワークパケットサイズ(バイト):4096
クロック時間(ミリ秒)合計:16平均:(2250.00行/秒)
C:>
そのコマンドラインには2つの新しいオプションがあるかもしれません。 -cオプションは、インポート・ファイルのファイル形式がタブ区切りのテキストで、各行が改行されることを指定します。 -Tオプションは、bcpがWindows認証を使用してデータベースに接続する必要があることを指定します。 操作の方向を "in"から "out"に変更することにより、bcpを使用してデータベースからデータをエクスポートできます。たとえば、次のコマンドを使用してフルーツテーブルの内容をテキストファイルにダンプできます。 bcp inventory.dbo.fruits out "C: fruit inventory.txt" -c -T
コマンドラインでの表示方法は次のとおりです。 C:> bcp inventory.dbo.fruits out "C: fruit inventory.txt" -c -T
コピーを開始中…
42行がコピーされます。
ネットワークパケットサイズ(バイト):4096
クロック時間(ミリ秒)合計:1平均:(42000.00行/秒)
C:>
それはbcpコマンドのすべてです。バッチファイルまたはDOSコマンドラインにアクセスできる他のプログラムからこのコマンドを使用して、SQL Serverデータベースからのデータのインポートおよびエクスポートを自動化できます。
BCPインポートの例
BCPエクスポートの例




