php - 搜索印地语内容时出现 MYSQL 错误

标签 php mysql

我在搜索 hindi 时遇到以下错误表格内容

Database query failedIllegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation 'like'

这是我的查询

SELECT COUNT(art.id) as num FROM lehren_articles art INNER JOIN 
lehren_category_master cat ON art.category_id=cat.id INNER JOIN 
lehren_sub_category subcat ON art.subcategory_id=subcat.id INNER JOIN 
lehren_main_menu menu ON art.menu_id=menu.id INNER JOIN lehren_authors auth 
ON art.author_id=auth.id where art.id<>''  and ((cat.name LIKE '%क्या रीमा लागू  
%' OR art.title LIKE '%क्या रीमा लागू  %' OR art.id LIKE '%क्या रीमा लागू  %' OR 
art.created LIKE '%क्या रीमा लागू  %' OR menu.menu_name LIKE '%क्या रीमा लागू  %' 
OR subcat.name LIKE '%क्या रीमा लागू  %' OR auth.name LIKE '%क्या रीमा लागू  %' OR 
art.display_cube LIKE '%क्या रीमा लागू  %' OR art.language LIKE '%क्या रीमा लागू  
%' OR art.bucket LIKE '%क्या रीमा लागू  %' OR art.status LIKE '%क्या रीमा लागू  %' 
OR art.modified_date LIKE '%क्या रीमा लागू  %'))

最佳答案

您需要更改数据库和表的排序规则。

SET collation_connection = 'utf8_general_ci'

然后是你的数据库

ALTER DATABASE your_database_name CHARACTER SET utf8 COLLATE utf8_general_ci

ALTER TABLE your_table_name CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci

MySql 是由瑞典开发人员开发的,因此默认排序规则设置为瑞典语。

也请查看此链接以了解更多详细信息 -> https://airbladesoftware.com/notes/fixing-mysql-illegal-mix-of-collations/

关于php - 搜索印地语内容时出现 MYSQL 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44041888/

相关文章:

javascript - 多个动态下拉选择菜单不起作用 - PHP MySQL Jquery

php - 查询通过 phpMyAdmin 工作,但不能通过从 viewController 调用的 php 脚本工作

JavaScript 多选框不发布所有项目

MySql - 如何组合两个表的 where 子句以进行一对多连接?

php - 使用 mysqli_fetch_assoc() 从查询填充数组

php - 为两台远程机器同步两个 mysql 数据库

java - Android - 从 JSON 字符串转换为 Java 对象

PHP 发布到 REST Web 服务

php - 我可以用 Instagram 关注者计数制作排名脚本吗

mysql - 对于用户 "follow"/"friend"其他用户的网站,什么是好的数据库结构?