1

情况看起来像这样:我想在 MySQL 数据库中为 phpBB 3 进行大规模编辑。我已经在这里看到 MySQL 查询告诉我如何对(例如)post_text 进行这样的大规模编辑并更改所有链接。

我知道我可以这样做:

更新 phpbb_posts SET post_text='new_link.eu' 其中 post_text 是 'old_link.eu'。

而且我知道这会将所有指向 old_link.eu 的链接更改为 new_link.eu。

但我的情况不同。我只想对符合确切要求的帖子进行编辑。非常简单 - 我希望查询仅更改具有特定 forum_id 字段的帖子(它们属于正确的子论坛,我想在其中查看更改)。

我相信这可能对许多使用不同脚本的人有所帮助。

提前致谢!

4

1 回答 1

0

除非我们无法从这里看到您的要求有一些复杂性,否则您应该能够很容易地做到这一点。

  UPDATE phpbb_posts 
     SET post_text='new_link.eu' 
   WHERE post_text = 'old_link.eu'
     AND forum_id = <<whatever>>

在执行此操作之前,您绝对应该备份您的表格内容。如果您在查询中粗略地查找某些内容,除非您有备份,否则将很难恢复。

你也可以试试

  SELECT *
    FROM phpbb_posts 
   WHERE post_text = 'old_link.eu'
     AND forum_id = <<whatever>>

在运行更新以确保获得正确的行之前。

于 2013-03-18T13:47:50.760 回答