全局搜索和替换mysql?

时间:2009-06-15 02:08:03

标签: mysql

我现在使用某个系统的mysql数据库。

对于数据结构,每个5个DB中有10-35左右的表,并且在一个表上有5-40左右的列。

好吧,我想我是否不能用整个这些数据库的数据替换字符串中的字符串。

不会有什么,好方法吗?

推荐翻译

  

我目前使用mysql作为我的DBMS   是5个数据库,目前每个   包含10到35个表。每   表格有5到40列。

     

我想做一个全局替换   整个系统替换一些字符串   与另一个,例如取代“总统   布什“通过”奥巴马总统“。我想   一次更换全部。在那儿   任何方式这样做?

2 个答案:

答案 0 :(得分:1)

首先,翻译我认为你在说的话:

  

我目前使用mysql作为我的DBMS   有5个数据库,每个数据库目前包含10到35个表。每个表有5到40列。

     

我想在整个系统上进行全局替换,将一些字符串替换为另一个字符串,例如以“奥巴马总统”取代“布什总统”。我想立刻替换所有。有没有办法做到这一点?

简短回答:没有。

(呃)回答:我不相信有一个简单的步骤可以做到这一点。但是,您可以通过多个步骤完成此任务(获取数据库模式,获取表模式,遍历每个列,等等......)

答案 1 :(得分:0)

我只是想这样做。我需要用新的电子邮件地址更改旧电子邮件地址的所有实例。问题是我无法使用UPDATEREPLACE,因为我甚至不知道它出现的数据库的名称,更不用说表名,更不用说列了名。我只是想在整个系统中的任何地方进行简单的字符串替换

由于我的整个系统太大,我只是将所有数据库的所有数据库转储到一个巨大的.SQL文件中。然后我做了一个简单的字符串搜索和替换,然后将修改后的.SQL文件导入。

当然,即使MySQL系统很大,你也可以只使用目标字符串所在的数据库/表来实现。

您也可以尝试在十六进制编辑器中搜索,看看原始字符串是否仍然存在。

瞧。