我在DB中有好几年的数据,它是99%的拉丁字符。最近,我已经添加了MySQL连接后,执行以下操作:将mysql字符集更改为utf8,数据库中已存在的非拉丁字符现在无法读取
mysqli_set_charset($link, "utf8");
现在是由亚洲,希伯来文等字符数据库中的所有现有数据无法读取,并显示为垃圾数据。
如何修复数据库中的数据,使其可读的utf8字符集?
表字符集始终是utf8。唯一改变的是在连接期间有一个字符集(如上所示),并且在该行不存在之前。
表创建是相当基本,归类为utf8_general_ci
CREATE TABLE `test` (
COLUMNS + INDEXES
) ENGINE=InnoDB DEFAULT CHARSET=utf8
请发表您的'CREATE TABLE'语句,所以我们可以看看你的表编码。 – Bjoern