SQL Server bcp コマンドでフォーマット ファイルを利用する方法
SQL Server の bcp コマンドには、既存のテーブル情報をもとに、フォーマット ファイルを自動生成してくれる機能があります。たとえば、次のようにインポート先のテーブルとインポートしたいデータがあるとします。
-- インポート先のテーブル USE sampleDB CREATE TABLE t1 ( a int ,b char(10) ) -- インポートしたいデータ(C:\bulkTest1.csv) 1,AAA 2,BBB 3,CCC
この場合に、bcp コマンドをコマンド プロンプトから次のように実行すると、フォーマット ファイルを自動生成してくれます。
bcp sampleDB.dbo.t1 format nul -T -c -t "," -f C:\test.fmt
自動生成されたフォーマット ファイル(カンマ区切りの CSV ファイル用)
このように bcp コマンドでは、format nul と -f オプションでフォーマット ファイルを生成することができます。
このフォーマット ファイルを利用して、bcp コマンドでデータをインポートするには、次のように実行します。
なお、データが二重引用符(”)で囲まれている場合のフォーマット ファイルの作成方法は、別途投稿します。