Discuz!官方免费开源建站系统

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

[求助] 如何严格定义一个字符串进行替换操作,谢谢!

[复制链接]
myawei 发表于 2017-2-15 21:53:40 | 显示全部楼层 |阅读模式
本帖最后由 myawei 于 2017-2-15 21:55 编辑

我想把论坛内所有版块fid为0之下的帖子全部转移到89版块之下,也就是替换fid值,使用了下面的语句:
  1. UPDATE  `pre_forum_thread` SET fid = REPLACE(fid,'0','89')
复制代码

替换后发现一个严重的问题,不但fid为0的变化了,fid是10的也变成了189,是不是这个语句不能严格定义准确的“0”字符串,只要带“0”的比如10、20等都变化了,我想要只把fid是“0”的才变化,fid为10、20、30的这种都不变化,这个应该怎么定义呢,上面语句该怎么写呢?
麻烦高手出手相助,谢谢!

allthebest 发表于 2017-2-15 22:27:29 | 显示全部楼层
fid是“0”?什么意思?
回复

使用道具 举报

民审大大 发表于 2017-2-16 15:56:40 | 显示全部楼层
  1. UPDATE  `pre_forum_thread` SET fid = '89' WHERE fid = '0'
复制代码
回复

使用道具 举报

 楼主| myawei 发表于 2017-2-18 19:43:57 | 显示全部楼层
回复

使用道具 举报

格东站长网插件 发表于 2017-2-19 13:05:23 | 显示全部楼层
你的代码写错了
先搞清楚代码含义再执行,别乱来
3楼的代码不全,应该还有posts表的升级
回复

使用道具 举报

 楼主| myawei 发表于 2017-2-20 17:30:58 | 显示全部楼层
格东站长网插件 发表于 2017-2-19 13:05
你的代码写错了
先搞清楚代码含义再执行,别乱来
3楼的代码不全,应该还有posts表的升级

谢谢提醒,已经升级posts表了。
还有没有其他内容需要同步升级的呢
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2024-11-26 07:51 , Processed in 0.022005 second(s), 3 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表