我将phpbb2论坛转换为phpbb3。 但我有问题,phpbb2发布链接,这些链接仍留在MySQL数据库中。
phpbb2帖子链接例如。
/viewtopic.php?p=106352#106352
和phpbb3是:
/viewtopic.php?p=106352#p106352
(#之后有字母p)
来自phpbb2的当前链接无效,转换后, 所以我需要帮助替换MySQL DB中的帖子ID(数字)之间的#。
我有很多链接,如:
/viewtopic.php?p=106352#106352
我需要用p替换#(最后添加p) 像:
/viewtopic.php?p=106352#p106352
我不太了解MySQL,所以我卡住了。
请帮忙
答案 0 :(得分:1)
select replace('/viewtopic.php?p=106352#106352','#','#p')
update myTable
set myColumn = replace(myColumn, '#', '#p')
where someColumn = someThing
答案 1 :(得分:1)
一种可能的方法:
UPDATE phpbb_posts
SET post_text = REPLACE(post_text, '#', '#p')
WHERE post_text REGEXP '^[^#]*p=[0-9]+#[0-9]+$'
指定 WHERE
子句以防止更新不遵循格式的链接。