
如何批量执行sql查找替换?
数据库中有大量不同URL地址替换成相对应的地址比如地址A替换成地址B地址C替换成地址D......要大量替换我有个对应的替换文本A对应BC对D......如何执行...
数据库中 有大量不同URL地址 替换成相对应的地址
比如 地址A 替换成 地址B
地址C 替换成 地址D
......要大量替换
我有个对应的替换文本 A 对应B C对D ......
如何执行 展开
比如 地址A 替换成 地址B
地址C 替换成 地址D
......要大量替换
我有个对应的替换文本 A 对应B C对D ......
如何执行 展开
2个回答
2020-05-02
展开全部
在Linux里面,有一个比较好的工具sed,sed -i "s#A#B#g" filename,比如:sed -i "s#linux#windows#g" a.txt,这样可以把a.txt文件中所有的linux替换成windows,“#”可以换成其他的字符,可以根据实际情况来定。如果替换的内容来自文件,可以用脚本遍历文件的方式实现。例如:
旧地址文件:A.txt,需要处理的sql文件:mysql.sql,替换后的新内容:newtext
#/bin/bash
for line in `cat .A.txt`;
do
sed -i "s#$line#newtext#g" mysql.sql
done
当然,也可以指定替换行的范围(例如50行到100行),具体的请参考linux下sed命令的用法
旧地址文件:A.txt,需要处理的sql文件:mysql.sql,替换后的新内容:newtext
#/bin/bash
for line in `cat .A.txt`;
do
sed -i "s#$line#newtext#g" mysql.sql
done
当然,也可以指定替换行的范围(例如50行到100行),具体的请参考linux下sed命令的用法
追问
追答
你这个问题应该是第一个update语句没有使用结束符,两个update语句被当作一行了。在第二个update之前加分号或者一个一个执行。
2020-05-02
展开全部
select *,replace(A列名,'地址A','地址B') AS rep from 你的表名
追问
太谢谢了 解决了
UPDATE `表名` SET `列名` = replace (`post_content`,'要替换的内容','替换成的内容')
把A地址 B地址 大量对应地址 用EXCEL 生成上面格式 复制到文本 改成.SQL格式
上传批量执行
谢谢提醒要加;
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询