2013-06-21 45 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,通过所有表和午餐迭代为每一个

更新