我正在尝试将域 - domain.co.nz 替换为另一个域 - domain.com.au 我选择这可以通过update
但我可以使用 * 而不是设置每个表来完成 - 我基本上想做一个查找和代替。
问问题
42 次
2 回答
0
如果要替换domain.co.nz
数据库中出现的每个 ,则需要知道每个表和受影响的每个列。
最简单和最快捷的方法是转储您的数据库,在文本编辑器中查找并替换您的域,然后重新导入结果。
于 2013-10-19T21:23:29.310 回答
0
不,你不能update *
(自己尝试会这么难吗?)。除了指定一个表之外,您还需要指定一个列 - 使用数据库的真正意义在于,您可以将数据存储在您知道从哪里检索/修改它的位置 - 即问题暗示了一些非常糟糕的数据库设计。
您可以从信息模式数据库中获取表及其列的列表。很有可能使用过程游标遍历所有表,并遍历每个表中的所有列以创建更新语句,然后准备/执行该语句。但是实现这一点的代码远远超出了这里的答案。
如果您能承受停机时间,zessx 的答案是最实用的解决方案。
于 2013-10-19T21:36:26.597 回答