MySQL数据库实验实现简单数据库应用系统设计


Posted in MySQL onJune 21, 2022

观前提示:本篇内容为mysql数据库实验,代码内容经测试过,可能一小部分有所疏漏,也有会不符合每个人实验的要求的地方,因此以下内容建议仅做思路参考,。

一、实验目的

1、理解并能运用数据库设计的常见步骤来设计满足给定需求的概念模型(ER模型)和关系数据模型;
2、能结合有关的指南对模型进行优化处理。
3、能够在某主流DBMS上创建数据库模式、所建数据库模式满足用户的基本业务需求。

二、实验要求

从选题出发,按照数据库设计步骤,完成该选题语义所对应的数据库的概念结构设计、逻辑结构设计及数据库的物理实现。

温馨提示:以下内容均已经过测试,不过难免会有疏漏,但是代码实现大多数思路及实现经测验都是正确的。

三、实现内容及步骤

①从简单的选题语义出发,按照数据库设计步骤,分别完成如下内容:概念设计(ER模型),给出满足需求的最终全局ER图,要求模型尽量精简,消除不必要的冗余,并给出理由或说明。

MySQL数据库实验实现简单数据库应用系统设计

②逻辑设计(关系模型),把ER模型转换成适当的关系模式,并进行适当地规范化(可选),设计相关完整性约束,指出主键跟外键。

学生(学号、姓名、性别、专业、班级、寝室号) 主键:学号 外键:寝室号

寝室(寝室号、寝室电话、员工号) 主键:寝室号 外键:员工号

管理员(员工号、姓名、联系电话) 主键:员工号

完整性约束:

1、学生表:student

MySQL数据库实验实现简单数据库应用系统设计

2、寝室表:dormitory

MySQL数据库实验实现简单数据库应用系统设计

3、管理员表:admin

MySQL数据库实验实现简单数据库应用系统设计

③物理设计,在某一主流DBMS中创建数据库,根据业务需求规划适当索引(包括聚簇索引和非聚簇索引),并设计必要的用户视图(即外模式),完成相关查询或更新要求。

第一步:先创建一个数据库(实验六_简单数据库设计)

MySQL数据库实验实现简单数据库应用系统设计

第二步:建立学生表 (student)、寝室表 (dormitory) 跟 管理员表 (admin)

1️创建学生表(student)

MySQL数据库实验实现简单数据库应用系统设计

MySQL数据库实验实现简单数据库应用系统设计

2️创建寝室表(dormitory)

MySQL数据库实验实现简单数据库应用系统设计

MySQL数据库实验实现简单数据库应用系统设计

3️创建管理表 (admin)

MySQL数据库实验实现简单数据库应用系统设计

MySQL数据库实验实现简单数据库应用系统设计

第三步:添加外键约束

1️添加dno的外键约束

MySQL数据库实验实现简单数据库应用系统设计

MySQL数据库实验实现简单数据库应用系统设计

2️添加ano的外键约束

MySQL数据库实验实现简单数据库应用系统设计

MySQL数据库实验实现简单数据库应用系统设计

第四步:添加视图(v_student)

MySQL数据库实验实现简单数据库应用系统设计

MySQL数据库实验实现简单数据库应用系统设计

第五步:读入数据(admin、dormitory、student 表)

1️admin 表

MySQL数据库实验实现简单数据库应用系统设计

2dormitory 表

MySQL数据库实验实现简单数据库应用系统设计

3️student 表

MySQL数据库实验实现简单数据库应用系统设计

第六步:实验测试外键ano跟dno

1️测试外键约束ano

MySQL数据库实验实现简单数据库应用系统设计

因为有外键的约束,故无法在dormitory表中加入的数据中的ano跟admin表中的数据ano不一样。

2️测试外键约束dno

MySQL数据库实验实现简单数据库应用系统设计

因为有外键的约束,故无法在student表中加入的数据中的dno跟dormitory表中的数据dno不一样。

四、实验总结

  • 1、通过本次实验,对存储过程和触发器有了更深的认识;
  • 2、能够理解不同类型触发器的作用和执行原理, 验证了触发器的有效性;
  • 3、熟练掌握了数据库存储过程定义、存储过程运行,存储过程更名,存储过程删除,存储过程的参数传递。

到此这篇关于MySQL数据库实验实现简单数据库应用系统设计的文章就介绍到这了,更多相关 MySQL系统设计内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

MySQL 相关文章推荐
数据库连接池
Apr 06 MySQL
详解MySQL的Seconds_Behind_Master
May 18 MySQL
Mysql数据库命令大全
May 26 MySQL
Mysql 设置boolean类型的操作
Jun 04 MySQL
Mysql中存储引擎的区别及比较
Jun 04 MySQL
浅谈MySql整型索引和字符串索引失效或隐式转换问题
Nov 20 MySQL
mysql 乱码 字符集latin1转UTF8
Apr 19 MySQL
MySQ InnoDB和MyISAM存储引擎介绍
Apr 26 MySQL
MySQL 数据表操作
May 04 MySQL
mysql查找连续出现n次以上的数字
May 11 MySQL
MySQL中JOIN连接的基本用法实例
Jun 05 MySQL
MySQL数据库配置信息查看与修改方法详解
Jun 25 MySQL
MySQL数据库表约束讲解
Jun 21 #MySQL
MySQL数据库实验之 触发器和存储过程
Jun 21 #MySQL
MySQL transaction事务安全示例讲解
Jun 21 #MySQL
MySQL详细讲解变量variables的用法
Jun 21 #MySQL
mysql sql常用语句大全
Jun 21 #MySQL
MySQL示例讲解数据库约束以及表的设计
Jun 16 #MySQL
mysql幻读详解实例以及解决办法
Jun 16 #MySQL
You might like
PHP之生成GIF动画的实现方法
2013/06/07 PHP
php中rename函数用法分析
2014/11/15 PHP
php实现遍历目录并删除指定文件中指定内容
2015/01/21 PHP
PHP crypt()函数的用法讲解
2019/02/15 PHP
Yii2 queue的队列使用详解
2019/07/19 PHP
javascript 写类方式之三
2009/07/05 Javascript
javascript OFFICE控件测试代码
2009/12/08 Javascript
dojo学习第二天 ajax异步请求之绑定列表
2011/08/29 Javascript
JavaScript 原型继承
2011/12/26 Javascript
javascript中onclick(this)用法介绍
2013/04/19 Javascript
一个简单的Node.js异步操作管理器分享
2014/04/29 Javascript
Javascript 运动中Offset的bug解决方案
2014/12/24 Javascript
学习Angular中作用域需要注意的坑
2016/08/17 Javascript
详解vue express启动数据服务
2017/07/05 Javascript
React入门教程之Hello World以及环境搭建详解
2017/07/11 Javascript
Nodejs调用WebService的示例代码
2017/09/29 NodeJs
优雅的elementUI table单元格可编辑实现方法详解
2018/12/23 Javascript
nodejs同步调用获取mysql数据时遇到的大坑
2019/03/02 NodeJs
利用Vconsole和Fillder进行移动端抓包调试方法
2019/03/05 Javascript
JS实现点击生成UUID的方法完整实例【基于jQuery】
2019/06/12 jQuery
vue 使用class创建和清除水印的示例代码
2020/12/25 Vue.js
[56:42]完美世界DOTA2联赛循环赛 Matador vs Forest 第二场 11.06
2020/11/06 DOTA
Python中struct模块对字节流/二进制流的操作教程
2017/01/21 Python
Django中url的反向查询的方法
2018/03/14 Python
Python当中的array数组对象实例详解
2019/06/12 Python
Python字符串split及rsplit方法原理详解
2020/06/29 Python
Pycharm添加虚拟解释器报错问题解决方案
2020/10/13 Python
CSS3实现滚动条动画效果代码分享
2016/08/03 HTML / CSS
AVI-8手表美国官方商店:AVI-8 USA
2019/04/10 全球购物
求职简历中个人的自我评价
2013/12/01 职场文书
新教师培训心得体会
2014/09/02 职场文书
合伙经营协议书范本
2014/09/13 职场文书
餐厅保洁员岗位职责
2015/04/10 职场文书
Pytorch 如何加速Dataloader提升数据读取速度
2021/05/28 Python
python 常用的异步框架汇总整理
2021/06/18 Python
Nginx静态压缩和代码压缩提高访问速度详解
2022/05/30 Servers