bcpコマンドはbooks online を参照するとたくさんのオプションがありますが、本サンプルでは、 bcpコマンドを使用してテーブルデータのエクスポートとインポート(csv形式、ネイティブ形式)を行う方法を掲載します。
動作確認は SQL Server 2005 Developer Edition で行っています。
1. テーブルデータをエクスポートする
次のサンプルでは、SQLサーバインスタンス名が w2k3svr で、データベース名、スキーマ名を含むテーブルがSampleDB.dbo.TestTable のデータをカンマ区切りのcsv形式のファイルとネイティブ形式にファイルとしてエクスポートする方法を示しています。このほかにフォーマットファイルなどをエクスポートしたり、クエリを使用してエクスポートするカラムを設定することもできます。
-- Unicodeでcsvファイルをエクスポートする. -- セパレータは既定ではタブなので、-tオプションでカンマにしている bcp SampleDB.dbo.TestTable out export.csv -w -t "," -T -S w2k3svr -- ネイティブ形式でファイルをエクスポートする bcp SampleDB.dbo.TestTable out export.bin -n -T -S w2k3svr
2.テーブルデータをインポートする
bcpでエクスポートしたファイルをインポートしています。
-- ネイティブ形式のファイルをインポートする bcp SampleDB.dbo.TestTable in export.bin -n -e err.txt -T -S w2k3svr -- Unicode,CSV形式ファイルのインポートする -- セパレータがデータに含まれていると失敗します bcp SampleDB.dbo.TestTable in export.csv -w -t "," -e err.txt -T -S w2k3svr
3. まとめ
今回の説明は以上です。指摘点、あやまりなどがある場合はご指摘ください。
さんのコメント: さんのコメント: