【问题标题】:MySQL: server returns records in wrong encodingMySQL:服务器以错误的编码返回记录
【发布时间】:2013-01-10 05:03:49
【问题描述】:

我有 cp1251_general_ci 编码的数据库(有一些历史原因)。一切都很完美,直到我换了一个主人。 现在我遇到了一个问题。他们的服务器通过 utf-8 查询返回记录。 我想解决这个问题,不要触摸 HTML 输出。所以我看到了这样的方式——强制服务器只在 cp1251_general_ci 中提供内容。 我想重点是 MySQL 连接排序规则。如果是这样,我假设接下来的事情: 1. 复制当前DB指向MySQL连接排序规则AS cp1251_general_ci。之后使用此数据库并删除源数据库。 要么 2. 添加到数据库查询COLLATION。 如果是对/错或者你有更好的方法,我很高兴听到你的建议!

【问题讨论】:

    标签: mysql encoding collation


    【解决方案1】:

    感谢大家的精彩回答! :) 为了解决这个问题,我做了自己的调查。 这是一个解决方案:

    mysql_query ("set character_set_client='cp1251'");
    mysql_query ("set character_set_results='cp1251'");
    mysql_query ("set collation_connection='cp1251_general_ci'");
    

    所以重点是在查询/回答期间强制服务器设置正确的编码。现在它完美地工作了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-14
      • 2020-08-22
      • 1970-01-01
      • 2011-07-20
      • 2011-03-07
      • 2020-07-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多