bcpコマンドを使って特定のデータベーステーブルをエクスポート・インポートする
bcpコマンドを使って特定のデータベーステーブルをエクスポート・インポートする(2026/05/12)
エクスポート
code:dos
bcp DB名.dbo.TableA out "snapshot_20260101_20260228.dat" -S サーバー名 -T -n
csv(-c)かBCPネイティブ形式(-n)でエクスポートする
csvは手軽だが、カンマ・改行・デリミタ・精度に気をつける必要がある
「テキストエディタでパッと開きたい」のような要望がなく、単純にデータをエクスポート・インポートするだけならネイティブ方式の方が良さげ
データのネイティブ(データベース)データ型を使用して一括コピー操作を実行します。このオプションは、各フィールドに対してプロンプトを表示しません。ネイティブ値を使用します。
bcp ユーティリティを使用した一括コピー - SQL Server | Microsoft Learn
ネイティブデータ型
インポート
code:dos
bcp DB名.dbo.TableA in "snapshot_20260101_20260228.dat" -S サーバー名 -T -n
insert相当の動作をするので、TableAの既存のデータには影響しない
.datの中に一意制約違反データがある場合は注意
Windows認証の場合は-U/-Pオプションの代わりに-Tオプションを使う
エクスポートしたファイルの拡張子はなんでもよいが、.datが慣習
参考
bcp ユーティリティを使用する方法 - SQL Server | Microsoft Learn
bcp を使用してフォーマット ファイルを作成する (SQL Server) - SQL Server | Microsoft Learn