Azure mysql 连接重定向更改编码
Azure mysql connection redirection changes encoding
我使用连接到 Azure 中的 mysql 的 php 应用程序。我使用 utf8mb4 作为编码,utf8mb4_unicode_ci 作为排序规则。
当我在没有连接转发的情况下连接到 Mysql 时一切正常。
当我按照 here 所述在 php.ini 中启用连接转发时,我在处理数据库查询结果时收到有关格式错误的 UTF-8 字符的错误。连接转发是否有可能改变编码?如果是,我可以以某种方式禁用它吗?
在将 lib 与 PDO 一起使用时,这似乎是 Bug。
连接字符串中的字符集被简单地忽略了。
可以通过使用 SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci
作为 PDO::MYSQL_ATTR_INIT_COMMAND
来解决
我使用连接到 Azure 中的 mysql 的 php 应用程序。我使用 utf8mb4 作为编码,utf8mb4_unicode_ci 作为排序规则。
当我在没有连接转发的情况下连接到 Mysql 时一切正常。 当我按照 here 所述在 php.ini 中启用连接转发时,我在处理数据库查询结果时收到有关格式错误的 UTF-8 字符的错误。连接转发是否有可能改变编码?如果是,我可以以某种方式禁用它吗?
在将 lib 与 PDO 一起使用时,这似乎是 Bug。 连接字符串中的字符集被简单地忽略了。
可以通过使用 SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci
作为 PDO::MYSQL_ATTR_INIT_COMMAND