Recently I encountered a problem when using MySQL. The like Query always came out with something strange, which is not consistent with the things behind like. I checked it and finally solved it, the following method 4 is used. If you are interested, try other methods!
Method 1:
The solution is to add the "binary" attribute to a field that contains Chinese characters for binary comparison. For example, change "name char (10)" to "name char (10) binary ".
Method 2:
If you use the source code to compile MySQL, you can use the -- with -- charset = gbk parameter when compiling MySQL, so that MySQL can directly support Chinese searching and sorting.
Method 3:
You can use the locate function of Mysql to determine. The preceding problem is used as an example:
SELECT * FROM table WHERE locate (field, 'lil')> 0;
Method 4:
Change your Select statement to this way. SELECT * from table where fields like binary '% FIND % '.
The cause of the problem is:
In MySQL, Chinese Character sorting and search results are incorrect. This situation exists in many MySQL versions. If this problem is not solved, MySQL cannot actually process Chinese characters.
MySQL is case-insensitive when querying strings, and generally uses the ISO-8859 character set as the default character set when programming MySQL. Therefore, the case-sensitivity conversion of Chinese Encoded Characters During the comparison process causes this phenomenon.