Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Mencapai Perbandingan Sensitif Huruf dalam Pengumpulan MySQL?

Bagaimanakah Saya Boleh Mencapai Perbandingan Sensitif Huruf dalam Pengumpulan MySQL?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-21 07:08:10225semak imbas

How Can I Achieve Case-Sensitive Comparisons in MySQL Collations?

Sensitiviti Kes dalam Pengumpulan MySQL

Adalah pengetahuan umum bahawa pengumpulan MySQL berakhir dengan "_ci," yang menunjukkan perbandingan tidak sensitif huruf besar-besaran. Walau bagaimanapun, mungkin terdapat senario di mana pengguna memerlukan pengumpulan sensitif huruf besar dan kecil.

Penyelesaian:

Menurut Manual MySQL: http://dev.mysql.com/ doc/refman/5.0/en/charset-mysql.html

  1. Gunakan Akhiran "_cs" untuk menetapkan sensitiviti huruf besar-besaran dalam himpunan.
  2. Dapatkan senarai himpunan "_cs" menggunakan pertanyaan:
SHOW COLLATION WHERE COLLATION LIKE "%_cs"

Pertimbangan Tambahan untuk UTF-8 :

Penyelidikan menunjukkan bahawa tiada UTF-8 pengumpulan menggunakan "_cs" dalam MySQL. Untuk medan UTF-8 dengan kepekaan huruf besar kecil, disyorkan untuk menggunakan "utf8_bin."

Nota:

"utf8_bin" boleh menjejaskan fungsi ORDER BY. Untuk mengurangkan ini, gunakan yang berikut sintaks:

ORDER BY column COLLATE utf8_general_ci

Rujukan:

  • http://forums.mysql.com/read.php?103,19380,20 0971#msg-200971
  • http://forums.mysql.com/read.php?103,156527,198794#msg-198794

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencapai Perbandingan Sensitif Huruf dalam Pengumpulan MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn