-1

我有一个数据库,用于存储我们保留的图像缓存文件的静态路径。就像是:

http://subdomain.domain.com/img/cache/24295839.jpg

被存储了数十万次。我们最近切换到 SSL,需要创建某种类型的脚本来将数据库中的所有 http 更改为 https。

该字段是:

cached_file_url

我不知道从哪里开始。任何帮助,将不胜感激。

4

2 回答 2

3
UPDATE yourtable
SET
  cached_file_url = CONCAT('https://',
                      SUBSTRING_INDEX(cached_file_url, 'http://', -1))

在此处查看小提琴。

于 2013-08-27T19:40:47.730 回答
2

您应该能够在一个简单的查询中做到这一点。

UPDATE table
SET cached_file_url = REPLACE(cached_file_url, 'http://', 'https://')
WHERE cached_file_url LIKE 'http://%'

你应该熟悉 MySQL 字符串函数(或者至少知道当你有这样的问题时去哪里找)。

http://dev.mysql.com/doc/refman/5.5/en/string-functions.html

您可以在 MySQL 本身的编程语言中执行许多您可能通常在编程语言中执行的字符串操作。

于 2013-08-27T19:42:53.120 回答