当前位置: 首页 > news >正文

数据库精选题(四)(E-R模型)

🌈 个人主页:十二月的猫-CSDN博客
🔥 系列专栏: 🏀操作系统与数据库_十二月的猫的博客-CSDN博客

💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光

目录

前言

E-R模型 

练习题 

概念题 

题目一

E-R模型设计与模式转化 

题目二

题目三

总结 


 

前言

上一讲数据库精选题(三)(SQL语言精选题)(按语句类型分类)-CSDN博客重点在于各类SQL语句的语法以及经典的题型(题型难点只在于查询语句),里面并没有涉及特别难的SQL语句。

原因如下:一、各大院校应该不会出很难的SQL题目(我们学校出的就到这个难度的~~~);二、我个人想先把所有知识点过一遍,后续有时间把实验中难的SQL题目再做更新

所以看上一讲,我希望大家把它看成一个SQL的基础知识复习,重点放在各类型语句的语法以及彼此之间的对比,重在广度而不是深度

 本讲我们来进入E-R模型设计(本题在考试中也占有一个大题,分值不少)。进入这一讲前,如果你忘了E-R模型可以看我的另两篇文章复习一下数据库系统概念(第七周 第一堂)(E-R模型)-CSDN博客

数据库系统概念(第七周 第二堂)(E-R模型转关系模式)-CSDN博客

E-R模型 

简单复习一下:

实体:

 属性:

联系:

映射基数:

带箭头的表示:一

不带箭头表示:多  

练习题 

以题带练,让大家在练习题中逐步熟练E-R模型的绘制以及E-R模型向关系模式的转化原则

概念题 

题目一

问题描述:

什么是弱实体集?

问题求解:

解:

如果一个实体集的所有属性组合在一起都无法唯一确定一个元组(都无法形成主码),则称这样的实体集为弱实体集。弱实体集的出现是由于实体中的某些属性需要和其他实体产生联系,但是E-R模型中只允许联系出现在实体之间,于是只能让属性变化为实体(这个实体很有可能就是弱实体)。弱实体集需要和其依赖的强实体集的主码共同唯一标识弱实体集。

E-R模型设计与模式转化 

 E-R模型设计的流程:

1、确定E-R模型的最大整体(不出现在模型中)

2、确定E-R模型的实体集

3、确定E-R模型的联系集

4、确定E-R模型的属性集(实体和联系)

5、确定E-R模型实体/联系的主码

6、转化为关系模式

关系模式转化流程:  

1、拿到E-R模型

2、将E-R模型中的实体和联系一一转化为关系模式(关系表)

3、根据合并原则将联系表格和实体表格合并

题目二

问题描述:

一个工厂有若干仓库;每一仓库有若干职工作为仓库管理员,职工之间有领导与被领导的关系;仓库中保存工厂生产的多种零件。用E-R图表示上述内容,关注仓库面积、仓库中保存零件的种类、每种零件的入库时间及入库数量,职工的姓名、职称、职务及工资待遇,零件的颜色、成本及出厂价。并将E-R图转换成相应的关系模型

问题求解:

题目三

问题描述:

假设某超市公司要设计一个数据库系统来管理该公司的业务信息。该超市公司的业
务管理规则如下:
⑴该超市公司有若干仓库,若干连锁商店,供应若干商品。
⑵每个商店有一个经理和若干收银员,每个收银员只在一个商店工作。
⑶每个商店销售多种商品,每种商品可在不同的商店销售。
⑷每个商品编号只有一个商品名称,但不同的商品编号可以有相同的商品名称。每种商
品可以有多种销售价格。
⑸超市公司的业务员负责商品的进货业务。
试按上述规则设计ER 模型。( 10 分)

问题求解:

1、超市公司是整体,不用出现在E-R模型中

2、实体集有:仓库、连锁超市、商品、经理、收银员、业务员、销售价格(多值属性转化成实体集)

3、联系1:仓库、商店和商品之间的三元联系。仓库向商店提供商品

      联系2:商店和经理、商店和收银员之间的两个二元联系。经理在商品管理,收银员在商店收银

      联系3:商店和商品之间的二元联系。商店销售商品

      联系4:商品和销售价格之间的二元联系。商品拥有价格

      联系5:业务员和商品以及仓库的三元联系。业务员从仓库进货商品

      联系6:仓库和商品之间的二元联系。仓库存储商品,从而业务员能够从仓库进货商品

总结 

本文的所有知识点、图片均来自《数据库系统概念》(黑宝书)、山东大学李晖老师PPT。不可用于商业用途转发。

http://www.xdnf.cn/news/911647.html

相关文章:

  • 基于nacos2.5.1的MCP服务端微服务项目开发环境配置简介
  • 提升CPU、内存及磁盘利用率脚本
  • 群晖文件操作API
  • 自然语言处理的发展
  • (33)课54--??:3 张表的 join-on 连接举例,多表查询总结。
  • MyBatis————入门
  • 【SSM】MyBatisPlus笔记:快速上手MyBatisPlus
  • C++算法动态规划3
  • VUE前端实现自动打包成压缩文件
  • Linux缓冲区与glibc封装:入门指南
  • 智能生成完整 Java 后端架构,告别手动编写 ControllerServiceDao
  • 网络编程及原理(三)
  • 2025最新VMware17如何通过官网进行下载
  • [蓝桥杯]迷宫与陷阱
  • 端游如何反调试
  • 几何引擎对比:OpenCasCade、ACIS、Parasolid和CGM
  • 使用 FastMCP 构建你的第一个 MCP 服务:从零开始的 Python 示例
  • DAX权威指南8:DAX引擎与存储优化
  • 缓解骨质疏松 —— 补钙和补维 D
  • TeamCity Agent 配置完整教程(配合 Docker Compose 快速部署)
  • Steam 搬砖项目深度拆解:从抵触到真香的转型之路
  • 迈向群体智能-具身大小脑协作框架RoboOS及具身大脑RoboBrain
  • vim 替换 字符串 带 斜杠
  • 12-Oracle 23ai Vector 使用ONNX模型生成向量嵌入
  • RK3288项目(三)--linux内核之V4L2框架及ov9281驱动分析(上)
  • 手写muduo网络库(零):多线程中使用 weakptr 跨线程监听生命状态
  • 【android bluetooth 协议分析 02】【bluetooth hal 层详解 8】【高通蓝牙hal-进程被杀之前日志收集流程】
  • jmeter之导出接口
  • 立定跳远-二分
  • 20250606-C#知识:委托和事件