2

次のようなクエリでMySQLデータベースを検索しているとき:

SELECT * FROM mytable WHERE mytable.title LIKE '%副教授%';

("副教授" は 3 つの漢字で、10 進数字参照 (NCR) は " 副教授")、結果が得られませんでした。

phpMyadmin を調べて "mytable" を参照すると、見つかるはずのエントリが " 副教授" として表示されます。それが検索の失敗の理由だと思います。

同じ列のすべてのエントリが数字参照であるとは限らず、一部は通常の文字参照です。これは、phpMySQLAdmin に表示されるテーブル列の 1 つの写真です。

ここに画像の説明を入力

NCR に表示されているかどうかに関係なく、1 つの形式を使用して MySQL のテーブル内のすべてのエントリを検索するにはどうすればよいでしょうか。または、スクリプトを実行して NCR エントリを変換する必要がありますか? ありがとう。

4

1 に答える 1

1

データベーステーブルのエンコーディングはutf-8、新しいデータを挿入するときに挿入するset names 'utf-8'前にクエリを実行する必要があり、これにはすべてのデータが含まれます。

于 2016-02-14T14:00:03.400 に答える