数据库设计

简介: 数据库设计 ER模型 Entity-Relationship,实体-关系模型。该模型的图形化表示就是ER图。 1.用矩形表示实体。 2.用椭圆表示实体属性。 3.用零星表示是体检关系。 例一:有一个简单的数据库系统,实体有班级、学生、课程。 一个班有若干个学生,一个学生只能属于一个班。 一个学生可以选修多门课,一门课有若干学生选修。 将ER图转换为关系数据模型 1.

数据库设计

ER模型

Entity-Relationship,实体-关系模型。该模型的图形化表示就是ER图。

1.用矩形表示实体。

2.用椭圆表示实体属性。

3.用零星表示是体检关系。

微笑例一:有一个简单的数据库系统,实体有班级、学生、课程。

一个班有若干个学生,一个学生只能属于一个班。

一个学生可以选修多门课,一门课有若干学生选修。


将ER图转换为关系数据模型

1.实体的转换
一个实体转化为一个关系模式。实体的属性就是关系模式的属性,主键类同。
2.联系的转换
(1)两实体间1:1的联系可以转换为一个独立的关系模式,也可以与任意一端的关系模式合并。
(2)两实体间1:N的联系可以转换为一个独立的关系模式,也可以与N端对应的关系模式合并。
(3)两实体间M:N的联系,必须为联系产生一个新的关系模式。该模式中至少包含两实体的主键。若联系有属性,也要加入该新的关系模式中。

关系代数

传统的集合运算:并、交、补、差、笛卡尔积。

专门的关系运算:投影(垂直分割)、选择(水平分割)、连接(关系的结合)、除法(笛卡尔积的逆运算)。

笛卡尔积:设元素R和S的属性个数分别为r、s。则R*S={<A,B>|A属于R,B属于S}。


左右连接、内连接

左外连接是以左边的表为基准。通俗的讲,先将左边的表全部显示出来,然后把右边表中符合条件的数据项拼接上去。

右外连接以右边表为基准。

内连接就是只显示匹配得上的数据项。

示例:
[TEST1@orcl#16-12月-11] SQL>select * from t1;

        ID NAME
---------- --------------------
         1 aaa
         2 bbb

[TEST1@orcl#16-12月-11] SQL>select * from t2;

        ID        AGE
---------- ----------
         1         20
         3         30


左外连接:
[TEST1@orcl#16-12月-11] SQL>select * from t1 left join t2 on t1.id=t2.id;

        ID NAME                         ID        AGE
---------- -------------------- ---------- ----------

         1 aaa                           1         20

         2 bbb


右外连接:
[TEST1@orcl#16-12月-11] SQL>select * from t1 right join t2 on t1.id=t2.id;

        ID NAME                         ID        AGE
---------- -------------------- ---------- ----------
         1 aaa                           1         20
                                         3         30


内连接:
[TEST1@orcl#16-12月-11] SQL>select * from t1 inner join t2 on t1.id=t2.id;

        ID NAME                         ID        AGE
---------- -------------------- ---------- ----------
         1 aaa                           1         20

关系的规范化

函数依赖。

X、Y为关系R中的两个属性。若Y可完全由X唯一确定,则称Y依赖于X。记作X->Y.

索引类型

唯一索引:索引了不能有两行记录行同。
非唯一索引:与上述概念相对。


单列索引:索引根据单列创建。
复合索引:索引根据多列创建。


聚集索引:对表进行物理排序的索引。比如汉语字典按拼音字母顺序进行聚集索引。
非聚集索引:不对表进行物理排序的索引。比如汉语字典中偏旁部首的索引。数据库中可有1个聚集索引和多个聚集索引。

目录
相关文章
MCS-51单片机串行接口
MCS-51单片机串行接口
561 1
|
12月前
|
传感器 人工智能 搜索推荐
数字孪生在医疗健康中的作用:重塑医疗体验与提升服务质量
数字孪生技术在医疗健康领域的应用正逐步展现出巨大潜力,通过构建患者的个性化数字模型,实现精准医疗、疾病预测、手术优化、设备仿真和患者管理,显著提升了医疗服务质量与患者体验。
|
12月前
|
开发框架 C# iOS开发
基于C#开源、功能强大、灵活的跨平台开发框架 - Uno Platform
基于C#开源、功能强大、灵活的跨平台开发框架 - Uno Platform
389 3
|
机器学习/深度学习 传感器 人工智能
【AIGC】AIGC全面介绍
AIGC,即人工智能生成内容,是指基于生成对抗网络(GAN)、大型预训练模型等人工智能的技术方法,通过已有数据的学习和识别,以适当的泛化能力生成相关内容的技术。它是人工智能1.0时代进入2.0时代的重要标志,标志着人工智能从计算智能、感知智能向认知智能的进阶发展。
1546 60
|
JavaScript 前端开发 Java
一文让你了解微服务契约测试
谈到微服务,大家都想到契约测试,到底什么是契约测试呢,为什么要使用契约测试呢,关于这样的文章很多,本文将结合Spring Boot让你了解微服务契约测试。
199 0
一文让你了解微服务契约测试
|
Ubuntu 网络安全 数据安全/隐私保护
ubuntu server连接wifi教程
本文提供了一个简化Ubuntu Server在Raspberry Pi系统上配置过程的脚本"config_ubuntu_server",包括自动和手动两种方法来设置root权限、SSH配置,并连接WiFi,同时支持无密码SSH访问,适合初学者和高级用户。
495 3
|
机器学习/深度学习 传感器 边缘计算
深度学习之边缘计算与云计算结合
边缘计算与云计算结合是现代人工智能和物联网领域的重要技术方向。通过将边缘计算的实时处理能力和云计算的强大计算资源结合起来,可以实现高效、低延迟的智能应用。
307 1
|
SQL 安全 关系型数据库
一切都是为了安全!数据脱敏的 几种方案
一切都是为了安全!数据脱敏的 几种方案
180 0
|
编解码 安全 Windows
如何解决Windows电脑自动黑屏问题?
【8月更文挑战第19天】以下是可能导致Windows电脑自动黑屏的原因及解决方法:硬件问题包括显示器连接不良、显卡故障(如风扇不转或驱动过时)、内存条接触不良、CPU过热及电源供应不稳定。软件问题涉及系统故障(尝试系统还原或运行SFC扫描)、显卡驱动不兼容、软件冲突或恶意软件感染。此外,不当的电源管理和显示设置也可能引发黑屏。针对这些问题,采取相应的检查和修复措施通常可以解决问题。
901 0
|
存储 供应链 安全
【区块链】联盟链
【区块链】联盟链
904 0