[解決済み] PHPでMySQLを使用する場合、最適な照合順序は何ですか?[クローズド]です。
2022-03-22 03:12:26
質問
入力される内容が100%確定していない一般的なWebサイトの場合、MySQLの照合順序に"best"という選択はあるのでしょうか?MySQL、Apache、HTML、PHP内のものなど、すべてのエンコーディングが同じであるべきだと理解しています。
過去にPHPで"UTF-8"で出力するように設定したことがありますが、MySQLではどの照合順序と一致するのでしょうか?UTF-8のどれかだと思うのですが、私はこれまで
utf8_unicode_ci
,
utf8_general_ci
および
utf8_bin
の前にあります。
解決方法は?
主な違いは、ソートの精度(言語内の文字を比較する場合)と性能です。唯一特殊なのは、バイナリ形式の文字を比較するためのutf8_binです。
utf8_general_ci
よりもやや高速です。
utf8_unicode_ci
しかし、(ソートの)精度は低くなります。また
特定言語のutf8エンコーディング
など
utf8_swedish_ci
) には追加の言語ルールが含まれており、それらの言語に対して最も正確にソートできるようになっています。たいていの場合、私は
utf8_unicode_ci
(特定の言語を好む正当な理由がない限り、(私はわずかなパフォーマンスの向上よりも正確さを重視します)。
特定のユニコード文字セットについては、MySQLのマニュアルで詳しく説明されています。 http://dev.mysql.com/doc/refman/5.0/en/charset-unicode-sets.html
関連
-
[解決済み】ディレクトリ内のファイル数を数える PHP
-
[解決済み] $_SERVER['DOCUMENT_ROOT'] と $_SERVER['HTTP_HOST'] の違いについて
-
[解決済み] MySQLでdatetimeとtimestampのどちらのデータ型を使用すべきですか?
-
[解決済み] MySQLでコマンドラインを使用してSQLファイルをインポートするにはどうすればよいですか?
-
[解決済み] ブーリアン値を格納するために使用するMySQLデータ型
-
[解決済み] PHPでパスワードをハッシュ化するためにbcryptを使用するにはどうすればよいですか?
-
[解決済み] ずっとUTF-8
-
[解決済み] PHPのstdClassとは何ですか?
-
[解決済み] Base64エンコーディングは何に使うのですか?
-
[解決済み] リファレンス - このシンボルはPHPで何を意味するのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] [Solved] Fatal error: メンバ関数bind_param()のbooleanに対する呼び出し [重複] [重複
-
[解決済み】pdo - 非オブジェクトのメンバー関数prepare()への呼び出し【重複】。
-
[解決済み】chromeの「net : Failed to load resource: net::ERR_SPDY_PROTOCOL_ERROR" は何がおかしいのか?
-
[解決済み] Uncaught SyntaxError: JSON の位置 1 に予期しないトークン o があります。
-
thinkphp5 timestamp 非整形の数値に遭遇した。
-
[解決済み] Uncaught Error: 未定義の関数 mysql_escape_string() の呼び出し。
-
[解決済み] mysql_field_nameを新しいmysqliに変更します。
-
[解決済み] libapache2-mod-php7 パッケージの場所がわからない
-
[解決済み】UTF-8:一般?Bin?ユニコード?
-
[解決済み】データベース全体のCHARACTER SET(およびCOLLATION)を変更する方法は?