社区
Web 开发
帖子详情
多对多关联表,用单主键还是双主键?
berg369
2008-10-14 08:09:14
许多文章建议为表设置与业务无关的单主键,避免使用双主键,但是多对多关系的关联表,我一向是设计为双主键的,请问我是否应加上一个主键,原双主键仅作为外键?
...全文
901
5
打赏
收藏
多对多关联表,用单主键还是双主键?
许多文章建议为表设置与业务无关的单主键,避免使用双主键,但是多对多关系的关联表,我一向是设计为双主键的,请问我是否应加上一个主键,原双主键仅作为外键?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
mytimes_walker
2008-10-16
打赏
举报
回复
根据需求设定.
berg369
2008-10-15
打赏
举报
回复
可是这种表并非真正的业务对象啊,比如角色-用户关联表,只有角色ID、用户ID必需字段(另外有默认角色、是否启用),仅是多对多关系的存储,增加一个单主键是否增加了复杂度?能否举例说明它的意义?
fosjos
2008-10-15
打赏
举报
回复
没规定不能这样
你觉得这样设计不存在问题,也没什么不方便,就可以了
比如对中间表的一条记录进行操作时(删除,或再关联到其他表),一个值肯定比两个值方便高效
又比如需要删除多条记录时,in语句也方便些
当然这些需求也不多见
aixiaorenzhe123
2008-10-14
打赏
举报
回复
按照要求来说当我们经常需要连接查询时最好用单主键!
fosjos
2008-10-14
打赏
举报
回复
同意用业务无关的主键
修改时方便些,安全些
hibernate使用
主键
关联
的一对一关系
demo代码; 博客地址:http://blog.csdn.net/smilefyx/article/details/48951933
关于数据
表
设计的问题, 是
主键
id 作为
关联
, 还是其他的唯一字段?
假设有业务需求,需要设计三张
表
user,order,goods order
关联
user,goods
关联
order 第一种情况:使用数据库
表
的
主键
做业务
关联
,order
表
存user_id,goods
表
存order_id;如果不是涉及到数据迁移,只是单库系统,这样做其实也没什么问题。
主键
其实最原始的目的只是为了保证数据查找唯一,后面才是存储效率和索引效率。在多数据库迁移下,自增就麻烦点,得另外做联合...
MySql数据库技术精讲
本课程详细讲述了数据库的相关概念和定义,及操作数据库的语法规范。包括MySql数据库的安装、卸载、登录,数据库的创建、移除,
表
的创建、修改、移除,
表
的数据类型的定义等DDL操作;包括
表
数据的增加、修改、删除等DML操作;包括单
表
查询、多
表
查询等DQL操作;包括
表
的各种
关联
关系:一对一、一对多、
多对多
;包括各种约束:
主键
约束、外键约束、非空约束、**约束等;包括分组查询、聚合函数操作、限制查询、条件查询、排序查询、分组条件过滤、
表
的连接查询、内连接查询、外连接查询、自然连接查询、左外连接查询、右外连接查询、全外连接查询、子查询等;包括各种单
表
、多
表
练习的分析和讲解!
mysql中设计自增
主键
id和外键
关联
时注意
作为一个提醒1.如果a
表
和b
表
是1对1,和c
表
是对多这时,在b
表
里设置外键a_id,
关联
a
表
的
主键
; c是多的一方,就是子
表
,在c
表
加外键a_id,
关联
a
表
的
主键
; 然后a,b,c三
表
主键
自增; 2.因为a
表
和b
表
是1对1,故也可以在a
表
中加外键b_id
关联
b
表
主键
;
主键
关联
和唯一
主键
Hibernate 一对一
关联
映射(
主键
关联
VS唯一外键
关联
) 博客分类: Hibernate HibernateXMLSQL生活 一对一
关联
映射有两种:一种是
主键
关联
,一种是“唯一”外键
关联
。
主键
关联
:原理是两张
表
的
主键
(ID)保持一致,在获取的时候根据两种
表
中的ID相同来作为关系判断的标准,这样的设计好处在于我们不用添加另外的字段来维护它们之间的关系。 废
Web 开发
81,092
社区成员
341,716
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章