2017-03-17 76 views
0

我想搜索http://example.com並用https://example.com替換。查詢替換數據庫所有表中的術語

我知道我可以針對特定的表和列這種方法:

UPDATE table_name SET post_content = REPLACE(column_name, 'http://example.com', 'https://example.com'); 

但我怎麼運行的針對所有表/列的查詢:整個數據庫?

+0

[Search&replace'http'to'https'in database](http://stackoverflow.com/questions/42857921/search-replace-http-to-https -in數據庫) –

回答

0

執行數據庫轉儲並將其作爲文本文件打開。查找和替換。保存並重新導入。

據我所知,我不認爲你可以在一個查詢中的所有表上使用REPLACE。

0

有兩種方法可以做到這一點。首先是通過information_schema創建SQL UPDATE,並將其作爲預準備語句執行。這是很多工作。

就得看每一列,如果你可以做一個替換,所以你必須忽略INTS和枚舉等

第二種方法是不是一個真正的SQL的變化,但它的工作原理:生成一個完整的SQL自卸從你的數據庫中通過編輯器或通過命令行使用AWK或SED在此文件中進行更改。在此之後,您可以導入已更改的文件

相關問題