2013-06-21 93 views
0

我正在尋找替換數據庫中所有表的所有列中的所有字符。在整個數據庫中替換MYSQL

我有我的專欄這樣的名字:

選擇表名,從INFORMATION_SCHEMA.COLUMNS列名;

我將應用更新REPLACE這樣的:

更新表名組列名=取代(列名, 「一個」, 「A」);

PS:將「a」替換爲「A」只是一個例子,我的問題是如何在我的兩個查詢之間鏈接table_name和column_name。

我試圖與子選擇,如:

更新(從選擇INFORMATION_SCHEMA.TABLES TABLE_NAME表)設定=取代(柱, 「A」(從作爲INFORMATION_SCHEMA.COLUMNS列在表格名=表中選擇列名), 「一個」);

但我仍然遇到錯誤,當我嘗試。什麼是正確的方法來做到這一點?

預先感謝您。

回答

2

您需要的是一個存儲過程,它將使用information_schema來查找數據庫中的所有表和列,併爲所有這些表執行更新語句。

看一看以下問題,回答你想要做什麼:Find and replace in entire mysql database

+0

非常感謝它helfull,這就是我需要10ks – user2420469

0

它不喜歡你的工作。

你有2種選擇:

1)遍歷在代碼方面和午餐爲每一個
2更新所有表)使用stored procedure,通過所有表和午餐迭代爲每一個

更新