将数据库编码修复为 UTF8

Posted

技术标签:

【中文标题】将数据库编码修复为 UTF8【英文标题】:fixing database encoding to UTF8 【发布时间】:2013-06-03 12:57:13 【问题描述】:

我需要将整个数据库的编码更改为 UTF8。

我之前是这样连接数据库的:

// mysql connect information.
$username = "root";
$password = "";
$host = "localhost";
$database = "yac";

// Connect.
$connection = mysql_connect($host, $username, $password)
or die ("It seems this site's database isn't responding.");

mysql_select_db($database)
or 

die ("It seems this site's database isn't responding.");

我的数据库内容在没有mysql_query("SET NAMES UTF8");的情况下存储到数据库中,数据是这样的:

باشگاه هوانوردان جوان

最近我像这样连接到数据库:

$mysql_username = "root";
$mysql_password = "";
$mysql_host = "localhost";
$mysql_database = "tick5";
$connection = mysql_connect($mysql_host, $mysql_username, $mysql_password) or die ("It seems this site's database isn't responding.");
mysql_select_db($mysql_database) or die ("It seems this site's database isn't responding.");
mysql_query("SET NAMES utf8"); 
mysql_query("SET CHARACTER_SET utf8");

存储的数据是这样的:

عنوان مقاله

因为我在 INSERT 查询之前使用了mysql_query("SET NAMES UTF8");,所以我没有任何问题,但现在我需要我的旧内容,我想更改编码并解决这个问题。

如何做到这一点?

注意:我的表排序规则是utf8_unicode_ci

【问题讨论】:

这还不够清楚,无法推荐任何东西。请尝试按时间顺序列出所有可用信息。你怎么连接数据库?你以什么编码插入数据?当你看它时,数据看起来如何?你想把什么改成什么,有什么问题?这都是关于细节的,你给的有点模糊。 UTF-8 all the way through 的可能重复项 应该这样做:***.com/questions/9304485/… 【参考方案1】:

试试看能不能帮到你。 http://www.gentoo-wiki.info/TIP_Convert_latin1_to_UTF-8_in_MySQL

如果您没有正在运行的 Linux 系统,您可以下载 Ubuntu LiveCD 并直接从 CD 运行它。 http://www.ubuntu.com/download/desktop

【讨论】:

以上是关于将数据库编码修复为 UTF8的主要内容,如果未能解决你的问题,请参考以下文章

修复损坏的 UTF-8 编码

php新手请教 关于 如何将数据库编码 改为utf8

雪花:将字段编码转换为 UTF8

springboot数据库将ansi编码转为utf8

MySQL设置默认编码集为utf8怎么设置

linux 设置mysql 数据库编码utf8