我有一个Moodle安装,我迁移到另一台服务器,我需要更改几个旧域的引用.@H_301_2@
对于搜索所有表,所有字段和所有行的给定数据库,如何在@L_301_0@中替换另一个字符串的字符串?@H_301_2@
相关:How can I use mySQL replace() to replace strings in multiple records?@H_301_2@
但标记为答案解决方案意味着我强烈键入表名称,我需要将其解压缩到整个数据库,而不是手动处理运行脚本的每个表N次.@H_301_2@
最佳答案
我会考虑查询INFORMATION_SCHEMA.COLUMNS并动态搜索列和表.尝试在db中创建所有列和表的游标:@H_301_2@
原文链接:https://www.f2er.com/mysql/433656.html@H_301_2@
DECLARE col_names CURSOR FOR
SELECT column_name,table_name
FROM INFORMATION_SCHEMA.COLUMNS
然后遍历每个表中的每个列,并运行dynamic / prepared sql来更新字符串所在的位置.@H_301_2@
以下是一些很好的帖子,可以帮助您找到正确的方向:@H_301_2@