SQLサーバーにおけるテーブルデータの一括コピー

テーブルの列にタブ記号や改行が入っていたりするときのための書き方。

REM BCPによる一括コピー(入力)
REM 列区切り=^^t (記号文字^は2重にする)
REM 行区切り=^^m\n (記号文字^は2重にする)

bcp (dbname).(owner)..(tablename) out (outfilename) -S (servername) -U (username)  -P (password) -c -t ^^^^t -r ^^^^m\n


REM BCPによる一括コピー(入力)
REM 列区切り=^^t (記号文字は2重にする)
REM 行区切り=^^m\n (記号文字は2重にする)

bcp (dbname).(owner)..(tablename) out (outfilename) -S (servername) -U (username)  -P (password) -c -t ^^^^t -r ^^^^m\n

当然ながら、データに"^^t"とか"^^m"とかが入っていると無効。何か「絶対に使われていない文字列」を考える必要がある。