2013-10-19 68 views
0

我想用另一個域 - domain.com.au替換域 - domain.co.nz我選擇這個可以通過update來完成,但我可以使用*而不是設置每個表 - 我基本上想要做一個查找和替換。MYSQL替換域的域

+0

可能已經解答:http://stackoverflow.com/questions/11863792/update-values-in-all-tables-using-single-query-in-mysql – Moob

回答

0

如果您要替換數據庫中的每個發生的domain.co.nz,您需要知道每個表,並且每個列都受到影響。

最簡單,最快捷的方法是做一個數據庫轉儲,找到&用文本編輯器替換你的域名,然後重新導入結果。

0

不,你不能update *(難道你自己會很難嘗試嗎?)。除了指定一個表之外,還需要指定一個列 - 實際上使用數據庫的一點是,您可以將數據存儲在一個您知道從哪裏檢索/修改它的位置 - 即問題提示數據庫設計不好。

您可以從information schema數據庫中獲取表列表及其列。可以使用過程遊標遍歷所有表,並遍歷每個表中的所有列以創建更新語句,然後準備/執行語句。但是實現這個的代碼在這裏超出了答案。

zessx的答案是最實際的解決方案,如果你能負擔得起的停機時間。