我在具有 htmlentities 的 mysql 数据库中有条目,因此,例如,ö
而不是ö
.
现在我意识到,接下来我必须使用该数据库做的事情,我将不得不摆脱所有 htmlentities 并将它们转换为相应的字符,例如ö
将必须变为ö
.
当然,我可以在 php 中执行此操作,并编写一个循环遍历不同列并写回解码字符串的脚本。
但我想知道是否有一种方法可以直接在 mysql 中使用单个更新语句来执行此操作,理想情况下甚至适用于所有列?
我在具有 htmlentities 的 mysql 数据库中有条目,因此,例如,ö
而不是ö
.
现在我意识到,接下来我必须使用该数据库做的事情,我将不得不摆脱所有 htmlentities 并将它们转换为相应的字符,例如ö
将必须变为ö
.
当然,我可以在 php 中执行此操作,并编写一个循环遍历不同列并写回解码字符串的脚本。
但我想知道是否有一种方法可以直接在 mysql 中使用单个更新语句来执行此操作,理想情况下甚至适用于所有列?
我前段时间读过这个,我希望这就是你要找的。您必须手动创建翻译规则:
http://forums.mysql.com/read.php?98,246527,246527
翻译与符号的示例:
IF INSTR( x , '&' )
THEN SET TextString = REPLACE(TextString, '&','&') ;
END IF ;
最好的方法是使用 PHP。虽然@Chris 的解决方案可以工作,但对于应该运行一次的人来说,它需要做太多的工作。
将 PHP 与事务和准备好的语句结合使用可以很好地完成这项工作。