Rumah pembangunan bahagian belakang tutorial php 为什么我的 Mysql 不支持中文查询_PHP

为什么我的 Mysql 不支持中文查询_PHP

Jun 01, 2016 pm 12:34 PM
mysql cina kenapa Sertakan sokongan kaedah Pertanyaan Rekod

MySQL查询

Q:

我在写一个查询条件时的问题如下:
如我想写一个字段中包含“李”字的所有记录
$str="李";
select * from table where field like '%$str%' ;
显示的记录中除了包含”李”字的记录,还有不包含“李”字的记录。为什么?

A:

在MySQL中,进行中文排序和查找的时候,对汉字的排序和查找结果是错误的。这种情况在MySQL的很多版本中都存在。如果这个问题不解决,那么MySQL将无法实际处理中文。

  出现这个问题的原因是:MySQL在查询字符串时是大小写不敏感的,在编绎MySQL时一般以ISO-8859字符集作为默认的字符集,因此在比较过程中中文编码字符大小写转换造成了这种现象。

方法一:

解决方法是对于包含中文的字段加上"binary"属性,使之作为二进制比较,例如将"name char(10)"改成"name char(10)binary"。

方法二:

  如果你使用源码编译MySQL,可以编译MySQL时使用--with--charset=gbk 参数,这样MySQL就会直接支持中文查找和排序了。

方法三:

  可以使用 Mysql 的 locate 函数来判断。以上述问题为例,使用方法为:
SELECT * FROM table WHERE locate(field,'李') > 0;
本站使用的就是这种方法,感觉还不错。:P


方法四:

把您的Select语句改成这样,SELECT * FROM TABLE WHERE FIELDS LIKE BINARY '%FIND%'即可!

Kenyataan Laman Web ini
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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apakah keutamaan bahasa C! X? Apakah keutamaan bahasa C! X? Apr 03, 2025 pm 02:06 PM

Non-operator logik (!) Mempunyai keutamaan di sebelah kurungan, yang bermaksud bahawa dalam ungkapan, ia akan mendahului kebanyakan pengendali lain. Memahami keutamaan bukan sahaja memerlukan hafalan, tetapi lebih penting lagi, memahami logik dan perangkap yang berpotensi di belakangnya untuk mengelakkan kesilapan yang tidak dapat dikesan dalam ekspresi kompleks. Menambah kurungan dapat menjelaskan niat ekspresi, meningkatkan kejelasan kod dan pemeliharaan, dan mencegah tingkah laku yang tidak dijangka.

Amalan terbaik untuk lalai bahasa c Amalan terbaik untuk lalai bahasa c Apr 03, 2025 pm 03:48 PM

Amalan terbaik lalai dalam bahasa C: Letakkannya pada akhir pernyataan suis sebagai pemprosesan lalai untuk nilai yang tidak dapat ditandingi; Ia digunakan untuk mengendalikan nilai yang tidak diketahui atau tidak sah untuk meningkatkan ketahanan program; mengelakkan pertindihan dengan cawangan kes untuk mengekalkan kesimpulan; Komen dengan jelas mengenai tujuan cawangan lalai untuk meningkatkan kebolehbacaan; Elakkan menggunakan pelbagai kegagalan dalam satu kes untuk mengekalkan kejelasan; Pastikan cawangan lalai ringkas dan elakkan operasi kompleks; Pertimbangkan menggunakan nilai penghitungan sebagai syarat kes untuk meningkatkan kebolehkerjaan; Dalam pernyataan suis yang besar, gunakan pelbagai cawangan lalai untuk mengendalikan situasi yang berbeza.

Tutorial mengenai cara mewakili pembahagi biasa dalam fungsi bahasa c Tutorial mengenai cara mewakili pembahagi biasa dalam fungsi bahasa c Apr 03, 2025 pm 11:21 PM

Kaedah untuk mencari pembahagi umum yang paling baik dan elegan dalam bahasa C: menggunakan bahagian fasa untuk menyelesaikan dengan sentiasa membahagikan selebihnya sehingga selebihnya adalah 0. Dua kaedah pelaksanaan disediakan: rekursi dan lelaran adalah ringkas dan jelas, dan pelaksanaan berulang lebih tinggi dan lebih stabil. Beri perhatian untuk mengendalikan nombor negatif dan 0s, dan pertimbangkan pengoptimuman prestasi, tetapi bahagian fasa itu sendiri cukup cekap.

Bacaan fail fileReader front-end: Mengapa anda perlu memberi instantiate terlebih dahulu dan kemudian membaca? Bacaan fail fileReader front-end: Mengapa anda perlu memberi instantiate terlebih dahulu dan kemudian membaca? Apr 04, 2025 pm 01:48 PM

Mengenai instansiasi dan bacaan fail dalam pembangunan front-end, kita sering perlu memproses fail yang dimuat naik oleh pengguna. gunakan

Terokai Pemisahan dan Penggabungan Fail: Alat Revolusi untuk Mengurus Fail Besar Terokai Pemisahan dan Penggabungan Fail: Alat Revolusi untuk Mengurus Fail Besar Apr 04, 2025 am 07:15 AM

Pernahkah anda mengalami kesukaran memindahkan atau menyimpan sejumlah besar fail? Ketahui mengenai FileSplitter & Penggabungan, projek sumber terbuka yang direka untuk memudahkan cabaran ini dengan cara yang elegan dan cekap. Apa yang dilakukan oleh projek ini? Segmentasi dan gabungan fail terdiri daripada dua alat: Pembahagi fail -membahagikan fail besar ke dalam ketulan yang lebih kecil. Gabungan fail -mengapa berguna untuk menggabungkan semula blok ini ke dalam fail asal? Bekerja dengan fail yang sangat besar boleh menakutkan, terutamanya apabila memindahkan atau menyimpannya. Alat ini membolehkan anda memecah fail ke dalam serpihan yang boleh diurus dan kemudian membina semula fail asal dari serpihan tersebut. Splitter Fail Program ini memecahkan fail input ke dalam kepingan yang lebih kecil daripada saiz yang ditentukan. Setiap blok disimpan sebagai fail berasingan. Penggunaan: Salin teks untuk dibahagikan

Kenapa tidak ada maklumat permintaan halaman di rangkaian konsol selepas melompat Vue-router? Kenapa tidak ada maklumat permintaan halaman di rangkaian konsol selepas melompat Vue-router? Apr 04, 2025 pm 05:27 PM

Kenapa tidak ada maklumat permintaan halaman di rangkaian konsol selepas melompat Vue-router? Apabila menggunakan Vue-Router untuk pengalihan halaman, anda mungkin melihat ...

Mengapa kod RXJS saya tidak berkuatkuasa semasa beroperasi di sungai? Mengapa kod RXJS saya tidak berkuatkuasa semasa beroperasi di sungai? Apr 04, 2025 pm 06:27 PM

Mengapa kod saya tidak berkuat kuasa apabila menggunakan RXJS untuk beroperasi di sungai? Belajar RXJS ...

Mengapa tidak ada output apabila menggunakan RXJS untuk memproses elemen aliran? Bagaimana menggunakan dan dari pengendali dengan betul? Mengapa tidak ada output apabila menggunakan RXJS untuk memproses elemen aliran? Bagaimana menggunakan dan dari pengendali dengan betul? Apr 04, 2025 pm 06:36 PM

Perbincangan mengenai masalah apabila menggunakan RXJS untuk beroperasi pada unsur -unsur dalam aliran dalam pembelajaran dan menggunakan RXJS ...

See all articles