ホームページ バックエンド開発 PHPチュートリアル MySQL が中国語のクエリをサポートしていないのはなぜですか?_PHP チュートリアル

MySQL が中国語のクエリをサポートしていないのはなぜですか?_PHP チュートリアル

Jul 13, 2016 am 10:52 AM
mysql サポートしません 中国語 なぜ 書く 含む 存在する 分野 時間 状態 お問い合わせ 質問

Q:
クエリ条件を記述するときの問題は次のとおりです:
たとえば、フィールドに「李」という単語を含むすべてのレコードを書き込みたいです
$str="李";
select * from table where field like ' %$str %' ;
「李」という単語を含むレコードに加えて、「李」という単語を含まないレコードもあります。なぜ?

A:
MySQL では、漢字をソートおよび検索するときに、漢字のソートおよび検索結果が間違っています。この状況は MySQL の多くのバージョンで存在します。この問題が解決されない場合、MySQL は実際に中国語を処理できなくなります。
この問題の理由は次のとおりです。MySQL は文字列のクエリ時に大文字と小文字を区別しません。通常、ISO-8859 文字セットがデフォルトの文字セットとして使用されるため、中国語のコード化された文字は比較プロセス中に大文字と小文字が変換されます。この現象を引き起こしました。
方法 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;
このサイトではこの方法を使用していますが、かなり良い感じです。 :P
方法 4:
Select ステートメントを次のように変更します。SELECT * FROM TABLE WHERE FIELDS LIKE BINARY '%FIND%'!

www.bkjia.com本当http://www.bkjia.com/PHPjc/632466.html技術記事 Q: クエリ条件を作成するときに発生する問題は次のとおりです。 たとえば、フィールド $str="李" に単語 "李" を含むすべてのレコードを書き込みたいのですが、フィールド select * from table where field like %$str; %; 表示されたレコード ...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Deepseekをローカルで微調整する方法 Deepseekをローカルで微調整する方法 Feb 19, 2025 pm 05:21 PM

Deepseekをローカルで微調整する方法

DeepSeek DeepSeekログインポータルにログインできない理由 DeepSeek DeepSeekログインポータルにログインできない理由 Feb 19, 2025 pm 05:00 PM

DeepSeek DeepSeekログインポータルにログインできない理由

Bybit Exchangeリンクを直接ダウンロードしてインストールできないのはなぜですか? Bybit Exchangeリンクを直接ダウンロードしてインストールできないのはなぜですか? Feb 21, 2025 pm 10:57 PM

Bybit Exchangeリンクを直接ダウンロードしてインストールできないのはなぜですか?

フリーマーケットソフトウェアアプリWebサイト フリーマーケットソフトウェアアプリWebサイト Mar 05, 2025 pm 09:03 PM

フリーマーケットソフトウェアアプリWebサイト

なぜビテンサーはAIトラックの「ビットコイン」と言われているのですか? なぜビテンサーはAIトラックの「ビットコイン」と言われているのですか? Mar 04, 2025 pm 04:06 PM

なぜビテンサーはAIトラックの「ビットコイン」と言われているのですか?

Gateio Exchangeアプリ古いバージョンGateio Exchangeアプリ古いバージョンダウンロードチャネル Gateio Exchangeアプリ古いバージョンGateio Exchangeアプリ古いバージョンダウンロードチャネル Mar 04, 2025 pm 11:36 PM

Gateio Exchangeアプリ古いバージョンGateio Exchangeアプリ古いバージョンダウンロードチャネル

ビットコイン:世界の流動性の「バロメーター」? ビットコイン:世界の流動性の「バロメーター」? Mar 04, 2025 pm 06:39 PM

ビットコイン:世界の流動性の「バロメーター」?

BITMEX:大売却後の最良のオプション戦略 BITMEX:大売却後の最良のオプション戦略 Mar 04, 2025 pm 06:27 PM

BITMEX:大売却後の最良のオプション戦略

See all articles