1

私のテーブルの照合順序はutf8_general_ciで、文字セットはutf8です。次のようなクエリを実行しても、値が表示されません。

SELECT * FROM mytable WHERE myfield = "Björn Borg"
OR myfield = "FrüFrü & Tigerlily";

どうすれば table から値を取得できますか?

4

2 に答える 2

1

問題は接続文字セットにある可能性があります。実行してみてください

SET NAMES 'utf8'

そして、あなたのクエリ。

于 2012-06-19T12:57:41.820 に答える
0

列レベルなど、MySQL が文字セットを定義する場所は他にもあります。

データベース設定を確認するには: SHOW VARIABLES LIKE 'char%'; 'collat​​ion%' のような変数を表示します。

テーブル設定を確認するには: SHOW CREATE TABLE tablename;

個々の列を確認するには: SHOW FULL COLUMNS IN tablename;

間違ったエンコーディングでデータベースを作成した場合は、これらすべてで不正な文字セットが出現するたびに変更する必要があります。

于 2012-06-19T15:37:09.803 に答える