MSSQLからMySQLにデータを移動しようとしています。Mysqlデータの移行 - wbcopytables charset
Incorrect string value: '\xF0\x9F\x8C\xA8\xE2\x98...' for column 'Value' at row 4
私のサーバー、データベース、テーブル、カラムはcharset=utf8mb4
を持っている:私はwbcopytables.exe
を実行しているときのMySQL接続の文字セットが間違っているようだ、私はデータは絵文字アイコンが含まれているエラー(http://apps.timwhitlock.info/unicode/inspect?s=%F0%9F%8C%A8%E2%98%83%EF%B8%8F)を取得していますcollation=utf8mb4_unicode_ci
。しかし、私はをの絵文字アイコンをそのテーブルに、私が作成した.NETアプリケーションで挿入することができるので、スキーマ/サーバ設定の問題ではありません。これにより、私はwbcopytables.exe
が接続で他のエンコーディング(おそらくutf8)を実施していると思うようになります。
[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
init_connect='SET collation_connection = utf8mb4_unicode_ci'
skip-character-set-client-handshake
EDIT:私はmy.iniファイルにこれらと他のSOの質問で提案されているようutf8mb4を強制するすべてのMySQLの変数を変更しようとしたhttps://dev.mysql.com/doc/workbench/en/wbcopytables.html
誰が 'wbcopytables'を所有していますか?それのためのドキュメントはどこですか? –
質問を更新しました。 'wbcopytables.exe'はMySQL Workbenchに同梱されているCMDユーティリティです。 – andy250
.NETアプリケーションは、ソースデータが正しくエンコードされているという唯一の証拠ですか?あなたは少なくとも 'NVARCHAR'カラムを使い、SQL Serverの接続エンコーディングをUnicodeとして設定していますか? –