我正在尝试在我的应用程序中添加像
😋
这样的表情符号。为了使其工作,我必须在数据库连接中使用charset : 'utf8mb4'
。但是我的其他搜索查询不起作用并出现这样的错误
select id, full_name, profile_pic from users where school_id = 1 and exists (select * from groupmembers where (group_id = '110') and (users.id = groupmembers.user_id)) and full_name like '%d%' COLLATE utf8_bin - ER_COLLATION_CHARSET_MISMATCH: COLLATION 'utf8_bin' is not valid for CHARACTER SET 'utf8mb4
如何将两个作品结合在一起?我正在使用 adonis.js 框架,它使用 knex 查询/
排序规则特定于字符集。如果您的字符集是 utf8mb4,那么您可以使用排序规则 utf8mb4_bin,但不能使用 utf8_bin。
有一天这会变得有点混乱,因为MySQL有意将utf8mb4的名称更改为utf8。比照。 https://dev.mysql.com/doc/refman/8.0/en/charset-unicode-utf8.html
您可以检查此查询允许的所有排序规则:
select collation_name
from information_schema.collation_character_set_applicability
where character_set_name = @@character_set_connection;
非常感谢您为我提供信息,我是 Sirvio muchísimo me soluciono el Problema que me salía
“排序规则特定于字符集。如果您的字符集是 utf8mb4,那么您可以使用排序规则 utf8mb4_bin,但不能使用 utf8_bin。”En el PhpAdmin cambie la collation que tenia la base de datos y le puse utf8mb4_bin y me funciono! 谢谢,espero que a otros tambien les Sirva