【发布时间】:2012-05-24 09:10:46
【问题描述】:
我也检查了其他问题,没有一个和这个很像。
众所周知,innodb 有一个特性。例如,如果我想更改记录的 id,那么所有其他指向前一个 ID 的表都会神奇地更新。
如果我想合并 2 条记录怎么办?
假设我有 2 家企业。
他们有 2 个 ID。
我想将它们合并为一个。我还想使用 innodb 很棒的功能来自动更改内容。
我不能只将其中一个 ID 更改为另一个 ID。或者我可以吗?
如何合并数据库中的 2 条相似记录?
当然,实际纳入合并记录的是业务决策。
基本上我只是不想一一指出所有其他表格。我认为更新规则是有原因的。有没有办法让我将slaveID更改为masterID,保持master中的所有数据相同,然后让数据库本身(而不是我的程序)重新指向所有指向slaveID的表指向masterID?当然,slaveID 的记录无论如何都会消失。
例如,使用普通的mysql引擎,你可以更改ID,然后你必须遍历所有指向旧ID的表来指向新ID。使用 innodb,重新指向是由数据库引擎本身完成的。这有点酷。为什么有人会使用非innodb引擎。
我也想这样做,但要合并。
【问题讨论】: