请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于用不用复合主键老师能给点意见吗?

两种方案哪种比较好
task_node_relations是一个标记另一张表上下游关系的表
child_node_id + parent_node_id 是唯一
task_flow_id用来筛选所属的全部节点关系列表
同一个task_flow 不会有很多节点
三个字段都可能会被用来筛选查询

 方案一:
 task_flow_id (所属) | child_node_id | parent_node_id
 PRIMARY KEY (`child_id`,`parent_id`),
 KEY `parent_id` (`parent_id`),
 KEY `task_flow_id` (`task_flow_id`)
 方案二:
 id | task_flow_id | child_node_id | parent_node_id 
 PRIMARY KEY (`id`),
 KEY `parent_id` (`task_flow_id `,`parent_id`),
 KEY `task_flow_id` (`task_flow_id `,`child_id`),

描述不清楚的很复杂的话也可以随便给点意见

正在回答 回答被采纳积分+3

1回答

sqlercn 2020-03-31 17:27:31

主键不建议使用复合索引,你可以用自增ID主键,另外在child,parent_id上建立一个唯一索引,以保证业务上数据唯一。

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信