ホームページ > バックエンド開発 > PHPチュートリアル > MySQL のような問題、超強力な Kill Record! ! ! _PHP チュートリアル

MySQL のような問題、超強力な Kill Record! ! ! _PHP チュートリアル

WBOY
リリース: 2016-07-21 15:57:31
オリジナル
914 人が閲覧しました

方法 1:
解決策は、漢字を含むフィールドに「binary」属性を追加してバイナリ比較を行うことです。たとえば、「name char(10)」を「name char(10)binary」に変更します。
方法 2:
ソース コードを使用して MySQL をコンパイルする場合、MySQL のコンパイル時に --with--charset=gbk パラメータを使用できるため、MySQL は中国語の検索と並べ替えを直接サポートします。
方法3:
Mysqlのlocate関数を使用して判断できます。上記の問題を例に挙げると、使用方法は次のとおりです:
SELECT * FROM table WHERElocate(field,'李') > 0;
Select ステートメントを次のように変更します。 BINARY '%FIND%' を使用できます

問題の理由は次のとおりです: MySQL で、漢字のソートと検索を行うと、漢字のソートと検索結果が間違っています。この状況は MySQL の多くのバージョンで存在します。この問題が解決されない場合、MySQL は実際に中国語を処理できなくなります。
この問題の理由は次のとおりです。MySQL は文字列のクエリ時に大文字と小文字を区別しません。通常、ISO-8859 文字セットがデフォルトの文字セットとして使用されるため、中国語のコード化された文字は比較プロセス中に大文字と小文字が変換されます。この現象の原因は

http://www.bkjia.com/PHPjc/317782.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/317782.html技術記事方法 1: 解決策は、漢字を含むフィールドに「binary」属性を追加してバイナリ比較を行うことです。たとえば、「namechar(10)」を「namechar(10)binary」に変更します。 方法 2: を使用する場合...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート