数据库设计概念结构设计_数据库设计典型实例

数据库设计概念结构设计_数据库设计典型实例文章目录数据库设计概念设计结构概念结构设计ER模型的基本元素实体/实体集属性区别实体和属性联系二元联系的关系1:11:nm:n一元联系1:11:nm:n三元联系采用ER模型的概念设计设计局部ER模型例题设计全局ER模型全局ER模型的优化数据库设计数据库设计:构造最优的数据模型,建立数据库及其应用系统的过程数据库设计的好坏非常重要概念设计结构概念设计的目标是产生反映用户需求的数据库概念结构,即概念模型概念模型具有硬件独立、软件独立的特点处于一个桥梁作用概念设计的主要步骤

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

数据设计

数据库设计:构造最优的数据模型,建立数据库及其应用系统的过程

数据库设计的好坏非常重要

数据库设计概念结构设计_数据库设计典型实例

概念设计结构

  • 概念设计的目标是产生反映用户需求的数据库概念结构,即概念模型

  • 概念模型具有硬件独立、软件独立的特点

  • 处于一个桥梁作用

  • 概念设计的主要步骤

数据库设计概念结构设计_数据库设计典型实例

  • 概念设计的方法
    • 实体练习方法(ER方法)

概念结构设计

ER模型的基本元素

实体/实体集

  • 实体

    • 实体是指数据对象,指应用中可以区别的客观存在的事物。
  • 实体集

    • 同一类实体组成的集合
    • 数据库设计概念结构设计_数据库设计典型实例
  • 举例

  • 数据库设计概念结构设计_数据库设计典型实例

属性

  • 实体的某一特征称为属性
  • 在一个实体中,能够唯一标识实体的属性或属性集称为“实体标识符
  • 一个实体只有一个标识符,没有候选标识符的概念。实体标识符有时也称为实体的主键

数据库设计概念结构设计_数据库设计典型实例

区别实体和属性

  • 实体和属性都是名词,所以要区分

  • 以例子讲解

  • 数据库设计概念结构设计_数据库设计典型实例

  • 找出名词

  • 数据库设计概念结构设计_数据库设计典型实例

  • 我们可以先看出规律,属性从属于实体,而且属性不能再分

  • 具体这题后面会讲

联系

  • 联系表示一个或多个实体之间的关联关系

  • 联系集是指同一类联系构成的集合

  • 将联系、联系集等统称为联系

  • 举例

  • 数据库设计概念结构设计_数据库设计典型实例

  • 数据库设计概念结构设计_数据库设计典型实例

  • 联系的元数

数据库设计概念结构设计_数据库设计典型实例

  • 二元联系

数据库设计概念结构设计_数据库设计典型实例

  • 三元联系

数据库设计概念结构设计_数据库设计典型实例

  • 一元联系(自己跟自己的联系)

数据库设计概念结构设计_数据库设计典型实例

二元联系的关系

1:1

数据库设计概念结构设计_数据库设计典型实例

1:n

数据库设计概念结构设计_数据库设计典型实例

  • 联系也会有属性:用于描述联系的特征

m:n

数据库设计概念结构设计_数据库设计典型实例

一元联系

1:1

数据库设计概念结构设计_数据库设计典型实例

1:n

数据库设计概念结构设计_数据库设计典型实例

m:n

数据库设计概念结构设计_数据库设计典型实例

三元联系

数据库设计概念结构设计_数据库设计典型实例

采用ER模型的概念设计

采用ER模型进行数据库的概念设计的步骤

  1. 首先设计局部ER模型
  2. 然后把各局部ER模型综合成一个全局ER模型
  3. 最后对全局ER模型进行优化,得到最终的ER模型,即概念模式

设计局部ER模型

数据库设计概念结构设计_数据库设计典型实例

  • 要点是区分实体和属性

  • 两条准则

    • 属性不能再具有需要描述的性质
    • 属性不能与其他实体具有联系
  • 举例

    • 因为职称跟其他东西挂钩,所以要作为实体

数据库设计概念结构设计_数据库设计典型实例

例题

  • 例题1

  • 画出ER图

  • 数据库设计概念结构设计_数据库设计典型实例

  • 数据库设计概念结构设计_数据库设计典型实例

  • 把借阅作为实体有问题吗

  • 数据库设计概念结构设计_数据库设计典型实例

  • 有,借阅信息没有实体标识符(类似主键,唯一区分),在ER图中每个实体都要有实体标识符,而联系没有。所以这里要给借阅信息加上一个实体标识符。

  • 数据库设计概念结构设计_数据库设计典型实例

  • 例题2

  • 数据库设计概念结构设计_数据库设计典型实例

  • 先看上面带序号的,区分出实体和属性

  • 数据库设计概念结构设计_数据库设计典型实例

  • 再根据关系,将各个实体相连

  • 数据库设计概念结构设计_数据库设计典型实例

设计全局ER模型

将局部ER模型综合成单一的全局概念结构的步骤:

  • 确定公共实体类型
    • 根据实体类型名和键来认定公共实体类型
  • 合并局部ER模型
    • 首先进行两两合并,先合并那些现实世界有联系的局部结构
    • 合并从公共类型开始,最后再加入独立的局部结构
  • 消除冲突
    • 属性合并(属性域冲突)
    • 结构冲突
    • 命名冲突

全局ER模型的优化

  • 优化原则

    • 合并实体类型

    • 消除冗余属性

    • 消除冗余联系

  • 例题

  • 学籍管理数据库设计概念结构设计_数据库设计典型实例

  • 课程管理数据库设计概念结构设计_数据库设计典型实例

  • 教师管理数据库设计概念结构设计_数据库设计典型实例

  • 全局ER

  • 数据库设计概念结构设计_数据库设计典型实例

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/182787.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 创建ORACLE大文件表空间

    创建ORACLE大文件表空间目录创建普通表空间你可以创建多大的表空间?    创建bigfile表空间查看表空间的使用情况 创建普通表空间 表空间不够报错ORA-01144:Filesize(26214400blocks)exceedsmaximumof4194303blocks 你可以创建多大的表空间?     我们在前面提及,BFT还受到操作系统的文件…

    2022年7月27日
    12
  • webservice常用框架_webservice开发框架

    webservice常用框架_webservice开发框架2019独角兽企业重金招聘Python工程师标准>>>…

    2022年9月21日
    3
  • opencv lsd算法_opencv目标识别

    opencv lsd算法_opencv目标识别最小二乘法的概念最小二乘法要关心的是对应的costfunction是线性还是非线性函数,不同的方法计算效率如何,要不要求逆,矩阵的维数一般都是过约束,方程式的数目多于未知的参数数目。最小二乘法的目标:求误差的最小平方和,根据costfunction的对应有两种:线性和非线性(取决于对应的残差(residual)是线性的还是非线性的)。线性最小二乘的解是closed-formsolution …

    2022年10月1日
    3
  • MMC 卡驱动分析[通俗易懂]

    MMC 卡驱动分析[通俗易懂]最近花时间研究了一下MMC卡驱动程序,开始在网上找了很多关于MMC卡驱动的分析文章,但大都是在描述各个层,这对于初学者来讲帮助并不大,所以我就打算把自己的理解写下来,希望对大家有用。个人觉得理解LINUX内核当中MMC/SD卡驱动程序构架是学习MMC卡驱动程序的重点,只有理解了它的基本框架或流程才能真正理解一个块设备驱动程序的写法,同时才能真正理解LINUX设备驱动模型是如

    2022年6月14日
    41
  • 小弟博客_博客来网址

    小弟博客_博客来网址原来位于Google上的博客在国内基本不能访问了,现在找了个新家,准备发布一些我这些年来编写的东西,主要集中在算法研究和程序设计上,语言主要是.NET(C#)和Delphi,当然,其它软件开发、算法相关的许多东西也会陆续加入,例如:JavaScript、XML、Web技术等等,另外也会有极少量的与IT行业不相关的东西。旧的不去,新的不来,旧博客关了也好,新博客总算是中文的…

    2022年10月4日
    3
  • 线程池学习使用

    线程池学习使用线程池学习使用

    2022年4月23日
    38

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号