前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >数据库设计

数据库设计

作者头像
Gujiu
发布2023-10-19 13:55:16
1920
发布2023-10-19 13:55:16
举报
文章被收录于专栏:Gujiu's BlogGujiu's Blog

项目二:数据库设计

一,为什么需要设计数据库

良好的数据库设计

1.节省数据的存储空间

2.能够保证数据的完整性

3.方便进行数据库应用系统的开发

糟糕的数据库设计

1.数据冗余、存储空间浪费

2.内存空间浪费

3.数据更新和插入的异常

二,数据冗余

数据冗余:指数据重复的现象

数据存在冗余,但为减少数据查找的麻烦,允许数据有一定的冗余。

数据完整性

数据完整性:指数据的准确性

存在不正确、不准确的数据,数据库“失去了完整性”。

三,概念

数据(Data)是描述事物的符号记录。

模型(Model)是现实世界的抽象。

数据模型(Data Model)是数据特征的抽象,包括数据的结构部分、数据的操作部分和数据的约束条件。

四,数据库的设计步骤

概念模型:把现实世界转换为信息世界的模型,E-R模型

实施模型:把信息世界转化为数据世界使用的模型,关系模型

五,模型

层次模型

网状模型

关系模型

此为二维表格

关系模型的特点

关系模型中基本数据结构是二维数据表,且必须满足相应的要求:

(1)表说明的是关系模型中某一特定的方面或部分的对象及其属性

(2)表中的行通常叫做记录或元组,代表具有相同属性的对象中的一个

(3)表中的列通常叫做字段或属性,代表存储对象的共有的属性

(4)数据表之间的关联通过“键”来实现的,键分为主键和外键两种。

(5)表必须符合某些特定条件

①信息原则:每个单元只能存贮一条数据;

②列有唯一性的名称,贮存在列下的数据必须具有相同数据类型;列没有顺序;;

③每行数据是唯一的;行没有顺序;

④实体完整性原则,即主键不能为空;

⑤引用完整性原则,即外键不能为空;

概念模型

建模:把现实世界转换为信息世界的模型,E-R模型

建模步骤:

收集信息:

与该系统有关人员进行交流、坐谈,充分理解数据库需要完成的任务

标识对象(实体-Entity)

标识数据库要管理的关键对象或实体 标识每个实体的属性(Attribute)

标识对象之间的关系(Relationship)

E-R模型

主码:也叫关键字,实体集中的属性或最小属性组合的值能唯一标识其对应实体,则将该属性或属性组合称为码。对于每一个实体集,可指定一个码为主码。

E-R图设计步骤

对于复杂的系统,E-R图设计通常都应经过以下两个阶段:

(1)针对每一用户画出该用户信息的局部E—R图,确定该用户视图的实体、属性和联系。需注意的是:能作为属性的就不要作为实体,这有利于E—R图的简化。

(2)综合局部E—R图,生成总体E—R图。在综合过程中,同名实体只能出现一次,还要去掉不必要的联系,以便消除冗余。一般来说,从总体E—R图必须能导出原来的所有局部视图,包括实体、属性和联系。

E—R模型到关系模型的转换

把E-R图转换为关系模型可遵循如下原则 :

(1)对于E—R图中每个实体集,都应转换为一个关系,该关系应包括对应实体的全部属性,并应根据关系所表达的语义确定哪个属性或哪几个属性组作为“主关键字”,主关键字用来标识实体。

(2)对于E—R图中的联系,情况比较复杂,要根据实体联系方式的不同,采取不同的手段加以实现。

E-R模型到关系模型的转换总结

假设A实体集与B实体集是1:1的联系,联系的转换有三种方法:

①把A实体集的主关键字加入到B实体集对应的关系中,如果联系有属性也一并加入;

②把B实体集的主关键字加入到A实体集对应的关系中,如果联系有属性也一并加入;

③建立第三个关系,关系中包含两个实体集的主关键字,如果联系有属性也一并加入。

两实体集间1:n联系

两实体集间1:n联系,可将“一方”实体的主关键字纳入“n方”实体集对应的关系中作为“外部关键字”,同时把联系的属性也一并纳入“n方”对应的关系中。 两实体集间m:n联系

对于两实体集间m:n联系,必须对“联系”单独建立一个关系,用来联系双方实体集。该关系的属性中至少要包括被它所联系的双方实体集的“主关键字”,并且如果联系有属性,也要归入这个关系中。

概念结构设计

概念结构设计- E-R图方法

实体关系图:简记E-R图,是指以实体、关系、属性三个基本概念概括数据的基本结构,从而描述静态数据结构的概念模式。

实体型(Entity):具有相同的特征和性质的集合体,用实体名及其属性名来抽象和刻画同类实体;在E-R图中用矩形表示,矩形框内写明实体名;比如学生张三、学生李四都是实体

属性(Attribute):实体所具有的某一特性,一个实体可由若干个属性来刻画。在E-R图中用椭圆形表示,并用无向边将其与相应的实体连接起来;比如学生的姓名、学号、性别、都是属性。

联系(Relationship): 数据对象彼此之间相互连接的方式称为联系,也称为关系。

一对一(1:1)联系
一对多(1:m)的联系
多对多(m:n)联系
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 项目二:数据库设计
    • 一,为什么需要设计数据库
      • 良好的数据库设计
      • 糟糕的数据库设计
    • 二,数据冗余
      • 数据完整性
        • 三,概念
          • 四,数据库的设计步骤
            • 五,模型
              • 层次模型
              • 网状模型
              • 关系模型
              • 概念模型
              • E-R模型
              • 概念结构设计
          相关产品与服务
          数据库
          云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档