微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

MySQL在文本列中更改文件扩展名

MySQL-pro的一个简单问题.我有一个表中包含文件名的字段(只是文件名,没有额外的文本).我需要将所有文件扩展名从“.png”更改为“.jpg”,我知道有一种方法可以使用PHP或Java等编程语言进行查询和编写脚本.

为了以防万一,删除“show create table”输出

CREATE TABLE `photos` (
  `id` bigint(20) NOT NULL,`owner_id` int(11) DEFAULT NULL,`photo_name` varchar(255) DEFAULT NULL,`comment` text,`normal_file_name` varchar(255) DEFAULT NULL,`thumb_file_name` varchar(255) DEFAULT NULL,`full_file_name` varchar(255) DEFAULT NULL,`photo_order` int(11) DEFAULT NULL,`gallery_file_name` varchar(255) DEFAULT NULL,`photo_type` varchar(255) DEFAULT NULL,PRIMARY KEY (`id`),KEY `FK_photos_OWNER_ID` (`owner_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 |

normal_file_name,thumb_file_name,gallery_file_name和full_file_name是包含文件路径的字段.

提前感谢您的帮助!

// Juriy

最佳答案
在UPDATE语句中使用REPLACE function

UPDATE PHOTOS
   SET normal_file_name = REPLACE(normal_file_name,'.png','.jpg'),thumb_file_name = REPLACE(thumb_file_name,gallery_file_name = REPLACE(gallery_file_name,full_file_name = REPLACE(full_file_name,'.jpg')

如果没有匹配,则不会进行替换.

原文地址:https://www.jb51.cc/mysql/433965.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐