Menghapuskan Aksen dalam Pangkalan Data MySQL
Untuk meningkatkan fungsi autolengkap bagi nama tempat dengan aksen, adalah penting untuk mengalih keluar aksen ini untuk memastikan kejayaan mendapatkan semula rekod walaupun pengguna memasukkan nama tanpa aksen.
MySQL menawarkan penyelesaian kepada isu ini melalui pengumpulan. Dengan menetapkan himpunan yang sesuai untuk lajur yang mengandungi nama tempat, pangkalan data secara semula jadi boleh membandingkan nilai beraksen dalam medan dengan nilai yang tidak beraksen.
Sebagai contoh, pertimbangkan penyataan MySQL berikut:
mysql> SET NAMES 'utf8' COLLATE 'utf8_unicode_ci'; Query OK, 0 rows affected (0.00 sec) mysql> SELECT 'é' = 'e'; +------------+ | 'é' = 'e' | +------------+ | 1 | +------------+ 1 row in set (0.05 sec)
Dalam contoh ini, pengumpulan utf8_unicode_ci ditetapkan, yang tidak peka huruf besar dan mengabaikan aksen. Akibatnya, aksara beraksen é dianggap sama dengan aksara tanpa aksen e.
Dengan menggunakan penyelesaian ini, rekod boleh diambil dengan tepat tanpa mengira sama ada pengguna menaip nama tempat dengan aksen atau tidak. Ini menghapuskan keperluan untuk lajur berasingan yang mengandungi nama tanpa aksen dan menyelaraskan proses mendapatkan data.
Atas ialah kandungan terperinci Bagaimanakah MySQL Collation Menyelesaikan Masalah Aksen dalam Autolengkap untuk Nama Tempat?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!