我已经将一个大PHPBB3数据库从Latin1数据库传输到UTF-8,一切正常,现在我需要更改数据库中的“奇怪”字符。昨天找到了一个可行的方法,现在找不到了,我尝试了:

update phpbb_topics set topic_title = replace(topic_title, 'Ã', 'à');
update phpbb_topics set topic_title = replace(topic_title, 'è', 'è');

基本上我需要将表字段中的所有 à 字符更改为 à 等等。

你怎么能这样做呢?

谢谢

有帮助吗?

解决方案

更新 phpbb_topics 设置 topic_title = 替换(replace(topic_title, 'è', 'è'), 'à', 'à');

您应该回答自己以下问题:

  • 数据库中存储哪些二进制数据(使用 ascii() 函数或 SELECT ...进入转储文件)
  • 发送到客户端的二进制数据是什么(并不总是与存储的相同)
  • 你的客户端如何显示收到的二进制数据?(尝试不同的客户端和不同的选项)

其他提示

我将其转储到SQL文件,然后用替换字符SED或文本编辑器(如果该文件是不是大)。之后,你再次运行该脚本。 也许有一种方式,直接对数据库做到这一点,但我不知道它。

约我的解决方案的问题在于,其不原子。转储和重新插入之间的分贝的变化都将丢失。

问候 拉斐尔

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top