分享

mysql更新字段部分内容通过CONCAT和SUBSTRING函数实现

 笑笑兔 2024-03-14 发布于天津

前言

项目开发前期欠缺考虑,将下载文件地址路径写入数据库,下载文件时直接读取地址即可。问题是更换服务器后,地址发生了改变,只能把部分内容批量替换,该如何解决呢。

解决方法

CONCAT和SUBSTRING函数

示例,数据库文档路径格式如下

/opt/tomcat/tomcat-practice-8090/webapps/upload/document/1702278625060.pdf
/opt/tomcat/tomcat-practice-8090/webapps/upload/document/1702278625780.pdf

更换服务器后,希望修改地址为以下格式(目的只是获取文件名)

/opt/tomcat-bhxn/webapps/upload/document/1702278625060.pdf
/opt/tomcat-bhxn/webapps/upload/document/1702278625780.pdf

如果数据少直接手动即可,但是遇到大量的数据,需要通过sql语句执行。代码如下

UPDATE document SET doc_url = CONCAT('/opt/tomcat-bhxn/webapps/upload/document/',SUBSTRING(doc_url,58)) WHERE id =1

SUBSTRING(doc_url,58),截取字段58字符开始

总结

以上只是临时方案,想要避免这样的问题,需要将地址通过动态配置文件拼接路径的方法去解决。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多