数据库设计 -- 表与表的三种关系
一对一
例如:user表和user_detail表,每一个user有一条detail,每一条detail属于一个用户。
表一(user_campaign)
表二(user_campaign_detail)
思路小结:user表和user_detail表,可以给user_detail表中的user_id建立唯一索引,既保证数据的正确性,也能提高查询速度;这里的第一张表的每一行只与第二张表的一行相对应。
提示
一对一关系是比较少见的关系类型。但在某些情况下,还是会需要使用这种类型。
适用场景
- 一个表包含了太多的数据列
- 将数据分离到不同的表,划分不同的安全级别。
- 将常用数据列抽取出来组成一个表
一对多
例如:一个人可以拥有多个session,每条session只属于一个人。
表一(user)
表二(user_session)
思路小结:建两个表,‘一’方不动,‘多’方添加一个外键字段
提示
一对多关系是最常见的关系类型。
适用场景
- 一个user有多个friend,一个user有多个session
- 一个user有多张银行卡,每张银行卡只属于一个user
多对多
例如:系统有多个用户,每个用户可以属于多个分组,每个分组中可以有多个用户。
表一(system_user)
表二(system_group)
表三(system_user_group)
思路小结:两个多对多的表,然后建立第三个表做关系表
提示
多对多关系,在关系数据库中也是比较常用的方式。
适用场景
- 系统有多个用户,每个用户有多个权限;其中也有多个权限,每个权限对应多个用户
- 学生选课,一个学生可以选修多门课程,每门课程可供多个学生选择
相关推荐
系统分析和设计 2.1 系统分析 2.1.1 可行性分析 三、 数据库设计 3.1 E-R图 3.1.1货物实体和属性 3.1.2 仓库实体和属性 3.1.3 管理员实体和属性 3.1.4采购员实体和属性 3.1.5 提货员实体和属性 3.1.6整体ER关系图 ...
数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据。 1 数据库设计的基本步骤: 2 概念结构设计 2.1 E-R模型基本符号 2.2 初步E-R图设计 2.3 ...
2. 数据库设计分析阶段,进行详细的数据库需求分析,进行概念数据库的设计,画出数据库的E-R图(局部和整体E-R图) 3. 设计出详细的逻辑数据库结构,将各个实体和联系转化为相应的二维表即关系模式,指定各个关系...
-小型超市管理系统,通过此次数据库的课程设计,真正达到了学与用的结合,增强了对数据库方面应用的理解,对自己今后参与开发数据库系统积累了不少经验,在实验过程中,从建立数据开始,对数据库设计理念及思想上有...
大型数据库技术-关系型数据库设计完整版资料.pptx
14-数据库课程设计任务书-某客运公司运输管理系统数据库设计.docx14-数据库课程设计任务书-某客运公司运输管理系统数据库设计.docx14-数据库课程设计任务书-某客运公司运输管理系统数据库设计.docx14-数据库课程设计...
数据库--教学大纲 18 数据库...包括数据模型、数据库结构、数据库系统、数据库设计、关系运算、关系规范化、关系查询(SQL语言)等方面的知识;介绍SQL Server 2008实际数据库管理系统的数据库--教学大纲全文共18页,当
关系数据库--逻辑结构设计举例
在关系数据库设计中,设计关系模式是( )的任务。 A.需求分析阶段 B.概念设计阶段 C.逻辑设计阶段 D.物理设计阶段 3.数据库物理设计完成后,进入数据库实施阶段,下列各项中不属于实施阶段的工作是 ( )。 A...
数据库设计,选课系统,附带数据库. 数据库中表的代表关系 z----count 账户表 k----course 课程表 y----depart 院系表 s----shouke 授课表 t----student 学生表 j----teacher 教师表 x----xuanke 选课表
基于 3NF 的数据库设计⽅法是由 S.Atre 提出的数据库设计的结构化设计⽅法,其基本思想是在需求分析的基础上,识别并确认数据库 模式中的全部属性和属性间的依赖,将它们组织成⼀个单⼀的关系模型,然后再分析模式...
Educoder数据库设计-博客系统 第 第1关:数据库表设计 关:数据库表设计 - ⽤户信息表 ⽤户信息表 任务描述 本关任务:创建博客系统数据库的⽤户信息表。 相关知识 数据库整体设计 ⼀个博客系统会有哪些功能呢,肯定...
软件工程与数据库 课程设计 任务书 学院名称: 数学与计算机学院 课程代码:_6014419_ 专 业: 年 级: 一、设计题目 图书管理系统 二、主要内容 一个简单的图书管理系统包括图书馆内书籍的信息、学校在校学生的信息...
数据库设计的基本步骤 (1)需求分析阶段:需求收集和分析,得到数据字典和数据流图。 (2)概念结构设计阶段:对用户需求综合、归纳与抽象,形成概念模型,用 E-R 图表示。 (3)逻辑结构设计阶段:将概念结构转换...
网络设计中关系数据库技术的应用-数据库理论-计算机.pdf
数据字典,E-R图,模式关系,实例,查询
第6章 数据库设计练习题 1.如何构造出一个合适的数据逻辑结构是( )主要解决...在关系数据库设计中,设计关系模式是数据库设计中( )阶段的任务。 A.逻辑设计阶段B.概念设计阶段C.物理设计阶段D.需求分析阶段 7.在关
分销系统的⽤户关系数据库设计~ id parent_id name 主键 ⽗级主键 名称 id user_id parent_id level 主键 ⽤户主键 ⽤户⽗级主键 ⽗⼦等级 id 姓名 1 ⼩明爷爷 2 ⼩明⽗亲 3 ⼩明 101 2 1 1 102 3 2 1 103 3 1 2 ...
辽 宁 工 业 大 学 《SQL server数据库设计实训》 报告 题目: 餐饮管理系统 院(系): 软件学院 专业班级: 电子商务(国际) 学 号: 学生姓名: 指导教师: 翟宝峰 教师职称: 副教授 起止时间:2011。...
空间数据库技术应用:关系数据库的设计.pptx