gpt4 book ai didi

mysql - 无法用 phpMyAdmin 替换 ../in mySQL

转载 作者:行者123 更新时间:2023-11-29 05:18:12 27 4
gpt4 key购买 nike

我正在尝试使用以下方法进行替换:

UPDATE wp_posts SET post_content=REPLACE (post_content, 'src=..\wp-content','src='wp-content')

数据库说它是成功的,但是有 0 行受到影响。

我可以在 post_content 中直接搜索 %..\wp-content% 并找到条目,这样我就知道它们存在了。

如何查找/替换这些条目 (..\wp-content)?

谢谢

最佳答案

您必须对反斜杠进行两次转义。

UPDATE .... 'src=..\\wp-content'etc...

由于 \w 不是 sql 元字符,sql 解析器会将其简化为简单的 w

例如

mysql> create table foo (x varchar(16));

mysql> insert into foo (x) values ('foo\war'), ('foo\\war');

mysql> select * from foo;
+---------+
| x |
+---------+
| foowar |
| foo\war |
+---------+

请注意单个反斜杠现在是如何消失的,它只是表格中的 foowar。这意味着您的 where 子句:

mysql> select * from foo where x='foo\war';
+--------+
| x |
+--------+
| foowar |
+--------+
1 row in set (0.00 sec)

mysql> select * from foo where x='foo\\war';
+---------+
| x |
+---------+
| foo\war |
+---------+

关于mysql - 无法用 phpMyAdmin 替换 ../in mySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29758757/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com