我有一个具有多个关系的标签系统。有时会有类似的标签应合并为一个。

让我们将应合并的标签tagA称为标签A,以使其消失,再将现在假定为tagA关系的标签称为tagB。

为了澄清起见,我需要的是:以前与tagA相关的每个实体现在都与tagB相关,然后删除tagA。

基本结构是这样的:

tag
---------------
tag_id

description



tag_news
---------------
tag_news_id

tag_id

news_id



tag_pages
---------------
tag_pages_id

tag_id

pages_id


等等...

我知道我可以简单地:

1)更新所有与'tag'表相关的表,将tagA的ID更改为tagB的ID。

2)从“标签”表中删除tagA。

但是与标记系统的关系不断增长,我想提供一个解决方案,使我不需要通知正在查询中更新的每个表。

我考虑过使用UPDATE级联,但是我无法在'tag'表中为tagB的ID更新tagA的ID,因为我将以具有相同主键的两条记录结尾。

关于如何进行这项工作的任何想法?

非常感谢你。

最佳答案

关于什么:
1.插入TagB作为新标签;
2.更新所有将TagA更改为TagB的表;
3.从标签表中删除TagA

08-26 13:25