我有一个带有文章表的MySQL DB(5.7.18)。每篇文章都在abstract
列中有一个抽象的HTML字符串。由于HTML编辑器中存在错误,许多HTML标签都会被烦人的样式污染,如下所示:
<h1 style="color: rgb(0, 0, 0);">Wonderful Abstract</h1>
为了解决这个问题,我正在尝试以下查询:
UPDATE `article` SET `abstract`=REPLACE(`abstract`,' style="color: rgb(0, 0, 0);"','')
不幸的是,显示了语法错误:
#1064 - 您的SQL语法出错;检查与MySQL服务器版本对应的手册,以获得正确的语法 在第'第1行''style =“color:rgb(0,0,0))'附近
如果删除分号,它可以正常工作:
UPDATE `article` SET `abstract`=REPLACE(`abstract`,' style="color: rgb(0, 0, 0)"','');
但它也必须在字符串中替换......
我找到了一个参考here说逃避它:
UPDATE `article` SET `abstract`=REPLACE(`abstract`,' style="color: rgb(0, 0, 0)\;"','')
但仍会显示错误消息。
同一来源中描述的另一个选项是在语句末尾添加分号:
UPDATE `article` SET `abstract`=REPLACE(`abstract`,' style="color: rgb(0, 0, 0);"','');
这两者的结合:
UPDATE `article` SET `abstract`=REPLACE(`abstract`,' style="color: rgb(0, 0, 0)\;"','');
错误信息仍然存在。
答案 0 :(得分:3)
答案 1 :(得分:0)