题
我已经将一个大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或文本编辑器(如果该文件是不是大)。之后,你再次运行该脚本。 也许有一种方式,直接对数据库做到这一点,但我不知道它。
约我的解决方案的问题在于,其不原子。转储和重新插入之间的分贝的变化都将丢失。
问候 拉斐尔
不隶属于 StackOverflow