SQL Server bcp コマンドで出力を utf-8 にする

bcpのオプションとして -c -C65001 を指定する。65001は utf-8 のコードページ。

参考:SQL ServerのBCPコマンドについて

ちなみに -w オプションはunicodeとなっているが、具体的には UTF-16LE で出力される。サロゲートペアの扱いについては調査していないので、厳密には UTF-16LE でないかもしれない。

UTF-8で出力したかったのは、マスターデータを Subversion リポジトリにいれて管理したかったため。差分を表示するのに中身が UTF-8 でないと面倒になる。

…ただ出力することは出来るのだが、これを逆に bcp を利用して直接インポートするためのオプションがない。難儀だ…

(追記)利用している文字データが ShiftJIS で表現できる範囲であれば、コードページ932 で生活した方がよさそうである。

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。