MySQL合并标记记录
我有一个标签系统,它有多种关系。有时,应该将类似的标记合并为一个 让我们将tagA称为应该合并的标记,然后将其消失,而tagB称为现在将采用tagA关系的标记 为了澄清,我需要的是:以前与tagA相关的每个实体现在都与tagB相关,然后删除tagA 基本结构如下:MySQL合并标记记录,mysql,sql,database,merge,tags,Mysql,Sql,Database,Merge,Tags,我有一个标签系统,它有多种关系。有时,应该将类似的标记合并为一个 让我们将tagA称为应该合并的标记,然后将其消失,而tagB称为现在将采用tagA关系的标记 为了澄清,我需要的是:以前与tagA相关的每个实体现在都与tagB相关,然后删除tagA 基本结构如下: tag --------------- tag_id description tag_news --------------- tag_news_id tag_id news_id tag_pages -------
tag
---------------
tag_id
description
tag_news
---------------
tag_news_id
tag_id
news_id
tag_pages
---------------
tag_pages_id
tag_id
pages_id
等等
我知道我可以简单地:
1)更新与“标记”表相关的所有表,将tagA的id更改为tagB的id
2)从“标签”表中删除tagA
但是与标记系统的关系在不断增加,我想要一个解决方案,不需要通知查询中正在更新的每个表
我曾想过使用UPDATE cascade,但我无法在“tag”表中将tagA的id更新为tagB的id,因为我将以具有相同主键的两条记录结束
有没有办法让这一切顺利进行
非常感谢。关于:
1.插入标记B作为新标记;
2.更新将TagA更改为TagB的所有表格;
3.从Tags表中删除可用的TagA,但有两个but。首先,tagB已经存在,其次,每当出现新的关系时,它都必须更新代码。但我开始认为我不会有一个神奇的解决方案。谢谢