【问题标题】:I Want to Change the Collation on my MySQL Database [duplicate]我想更改我的 MySQL 数据库的排序规则 [重复]
【发布时间】:2016-08-19 06:52:55
【问题描述】:

我最近将我的网站升级到 PHP 5.7 并安装了新的 MySQL 数据库。之前的数据是导入的。

现在我在输出的文本中有很多菱形问号。我已经阅读了,问题似乎是我的数据库的排序规则设置为 latin1_swedish_ci 并且我需要是 utf8 才能正确呈现存储在数据库中的特殊字符。

如果我更改排序规则,这可能会解决我的问题,修复旧帖子吗?

我是否在更改排序规则之前关闭网站,是否需要重新启动才能生效?我有点担心破坏数据,因为我的用户会因为丢失他们的历史帖子而非常沮丧。

我没有设置新数据库,我已经升级了现有数据库,并且需要保留历史数据。

我遵循了下面发布的答案之一,它适用于升级前输入数据库的数据,但现在使用各种“代替撇号等”呈现较新的数据。

【问题讨论】:

标签: php mysql collation


【解决方案1】:

你可以使用

$con = mysqli_connect("HOST","DB_USER","PASSWORD","DB_NAME");
$db->set_charset('utf8');

mysql_query('SET NAMES utf8');

【讨论】:

  • 但不要混用mysql_*mysqli_*;只使用后者。
猜你喜欢
  • 2019-01-24
  • 2012-07-27
  • 2011-03-29
  • 1970-01-01
  • 1970-01-01
  • 2011-04-08
  • 2014-11-25
  • 1970-01-01
  • 2013-10-24
相关资源
最近更新 更多