2

何年にもわたって、私が研究に使用しているデータベースは、SyBase から MySQL、PostgreSQL、そして MySQL に移行されてきました。

さまざまなエンコードの問題のためにデータが壊れないように非常に慎重に行われましたが、残念ながら多くのレコードが破損しました。

たとえば、レコードの 1 つに と記載されていますJòzefinaが、そうである必要がありますJózefina

この特定のエンコーディングの問題をプログラムで修正できるかどうか知っている人はいますか?

私はエンコーディングが得意ではありませんが、バイト シーケンスòóなどにマップすることはできたようです。

òどのエンコーディングがに対応するかを誰かが知っているのではないかと思うóので、壊れたテキストから正しいテキストへのエンコーディング マッピング テーブルを手動で作成する必要はなく、自動的に作成します。

4

1 に答える 1

1

照合をユニコードに変更します。これを行う:

ALTER TABLE `t1` CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;

テーブルはWindows-1252を使用しています。ご覧のように:

Dec 242
Hex F2
UTF-8 ò
Windows 1252 ò
于 2012-06-16T02:44:42.773 に答える