深圳大学数据库设计性实验报告
数据库实验报告
数据库实验报告一、实验目的本次数据库实验的主要目的是通过实际操作和实践,深入了解数据库的基本概念、原理和技术,掌握数据库的设计、创建、管理和数据操作的方法,提高对数据库系统的应用能力和问题解决能力。
二、实验环境本次实验使用的数据库管理系统是 MySQL,操作系统为 Windows 10。
实验中使用的开发工具包括 MySQL Workbench 和命令行终端。
三、实验内容与步骤(一)数据库设计1、需求分析根据给定的业务场景,确定数据库需要存储的信息和数据之间的关系。
例如,对于一个学生管理系统,需要存储学生的基本信息、课程信息、成绩信息等,并且明确这些信息之间的关联,如学生与课程的选课关系、课程与成绩的对应关系等。
2、概念模型设计使用 ER 图(实体关系图)来描述数据库的概念模型。
确定实体(如学生、课程)、属性(如学生的学号、姓名,课程的课程号、课程名)以及实体之间的关系(如多对多、一对多等)。
3、逻辑模型设计将概念模型转换为关系模型,确定数据表的结构,包括表名、字段名、数据类型、主键、外键等。
例如,学生表(学号、姓名、性别、出生日期),课程表(课程号、课程名、学分),选课表(学号、课程号、成绩)等。
(二)数据库创建1、使用 MySQL Workbench 或命令行创建数据库。
2、创建数据表,按照设计好的逻辑模型定义表结构。
(三)数据插入与操作1、使用 INSERT 语句向数据表中插入数据,以模拟实际的业务数据。
2、进行数据的查询操作,使用 SELECT 语句查询满足特定条件的数据。
3、进行数据的更新和删除操作,使用 UPDATE 和 DELETE 语句修改或删除数据。
(四)数据库索引与优化1、了解索引的概念和作用,为经常用于查询、连接和排序的字段创建索引。
2、分析查询语句的执行计划,通过优化查询语句、调整数据表结构等方式提高数据库的性能。
(五)数据库备份与恢复1、学习数据库备份的方法,使用 mysqldump 工具或 MySQL Workbench 进行数据库的备份。
数据库的设计实验报告
一、实验目的1. 理解数据库设计的概念、过程和步骤。
2. 掌握数据库概念结构、逻辑结构和物理结构的设计方法。
3. 能够运用E-R图进行数据库概念结构设计。
4. 能够运用SQL语句进行数据库逻辑结构和物理结构设计。
二、实验环境1. 操作系统:Windows 102. 数据库管理系统:MySQL 5.73. 开发工具:MySQL Workbench三、实验内容1. 数据库概念结构设计2. 数据库逻辑结构设计3. 数据库物理结构设计四、实验步骤1. 数据库概念结构设计(1)分析需求,确定实体和属性以“图书管理系统”为例,确定实体和属性如下:实体:图书、读者、借阅信息属性:- 图书:书名、作者、出版社、ISBN、出版日期、分类号、库存数量- 读者:读者编号、姓名、性别、出生日期、联系电话、邮箱、住址- 借阅信息:借阅编号、图书编号、读者编号、借阅日期、归还日期、状态(2)绘制E-R图根据实体和属性,绘制E-R图如下:```图书(书名,作者,出版社,ISBN,出版日期,分类号,库存数量)读者(读者编号,姓名,性别,出生日期,联系电话,邮箱,住址)借阅信息(借阅编号,图书编号,读者编号,借阅日期,归还日期,状态) ```2. 数据库逻辑结构设计(1)确定关系模式根据E-R图,确定关系模式如下:- 图书(书名,作者,出版社,ISBN,出版日期,分类号,库存数量)- 读者(读者编号,姓名,性别,出生日期,联系电话,邮箱,住址)- 借阅信息(借阅编号,图书编号,读者编号,借阅日期,归还日期,状态)(2)编写SQL语句创建表```sqlCREATE TABLE 图书 (书名 VARCHAR(100),作者 VARCHAR(50),出版社 VARCHAR(50),ISBN VARCHAR(20),出版日期 DATE,分类号 VARCHAR(10),库存数量 INT);CREATE TABLE 读者 (读者编号 VARCHAR(10),姓名 VARCHAR(50),性别 CHAR(1),出生日期 DATE,联系电话 VARCHAR(20),邮箱 VARCHAR(50),住址 VARCHAR(100));CREATE TABLE 借阅信息 (借阅编号 VARCHAR(10),图书编号 VARCHAR(10),读者编号 VARCHAR(10),借阅日期 DATE,归还日期 DATE,状态 VARCHAR(10));```3. 数据库物理结构设计(1)确定索引根据需求,确定索引如下:- 图书表:ISBN、分类号- 读者表:读者编号- 借阅信息表:借阅编号、图书编号、读者编号(2)编写SQL语句创建索引```sqlCREATE INDEX idx_isbn ON 图书(ISBN);CREATE INDEX idx_分类号 ON 图书(分类号);CREATE INDEX idx_读者编号 ON 读者(读者编号);CREATE INDEX idx_借阅编号 ON 借阅信息(借阅编号);CREATE INDEX idx_图书编号 ON 借阅信息(图书编号);CREATE INDEX idx_读者编号 ON 借阅信息(读者编号);```五、实验结果与分析1. 通过实验,掌握了数据库设计的概念、过程和步骤。
数据库设计实验报告总结
数据库设计实验报告总结引言数据库是现代信息系统中一个关键的组成部分,它将数据进行组织、存储和管理,为用户提供方便、高效的数据访问和处理。
在数据库设计实验中,我们学习了数据库设计的基本原理和方法,并通过实践掌握了数据库设计的具体过程。
实验目标本次实验的主要目标是通过一个实际的案例,从需求分析到数据库设计,掌握数据库设计的方法和技巧,培养学生的数据库设计能力和实际应用能力。
实验内容本次实验的案例是一个电影信息管理系统的设计。
通过需求分析,我们确定了系统的基本功能和用户需求,并根据这些需求进行数据库设计。
具体的实验内容包括以下几个方面:1. 数据库设计准备:理解需求文档,明确系统需求和功能。
2. 实体关系模型设计:根据需求文档中的实体和关系,确定系统的实体和关系,使用实体关系图进行表达和设计。
3. 数据库范式设计:通过对实体关系模型的分析,将其转化为符合各级范式的关系模式,确保数据库的数据结构合理化和存储优化。
4. 数据库物理设计:确定数据库的具体实现方式,包括选择数据库管理系统、创建数据库和表结构,并进行索引设计和查询优化。
5. 数据库编程:根据系统需求,编写数据库的存储过程、触发器和视图,实现系统的各种功能。
6. 数据库测试与优化:设计并执行测试用例,验证数据库的正确性和完整性,对数据库进行性能调优和优化。
实验总结通过本次数据库设计实验,我深刻理解了数据库设计的重要性和实际应用价值。
在实验中,我了解了数据库设计的基本原理和方法,并通过实践掌握了数据库设计的具体过程。
首先,在需求分析阶段,我学会了如何理解需求文档,明确系统需求和功能。
通过合理的需求分析,可以确保数据库设计的准确性和有效性。
其次,在实体关系模型设计阶段,我学会了使用实体关系图进行表达和设计。
通过实体关系图的设计,可以清晰地表达实体和关系之间的联系,从而帮助我们设计出符合系统需求的数据库结构。
然后,在数据库范式设计阶段,我学会了将实体关系模型转化为符合各级范式的关系模式。
数据库设计 实验报告
数据库设计实验报告数据库设计实验报告一、引言数据库设计是计算机科学中至关重要的一环,它涉及到数据的组织、存储和管理。
本实验报告旨在介绍数据库设计的基本原理和实践经验,以及本次实验的设计过程和结果。
二、数据库设计原理1. 数据库设计的目标数据库设计的主要目标是满足用户需求,提供高效、可靠、安全的数据存储和访问方式。
设计师需要深入了解用户的需求,并根据需求制定合理的设计方案。
2. 数据库设计过程数据库设计通常包括需求分析、概念设计、逻辑设计和物理设计四个阶段。
需求分析阶段需要明确用户需求和系统功能,概念设计阶段将需求转化为概念模型,逻辑设计阶段将概念模型转化为逻辑模型,物理设计阶段将逻辑模型映射到具体的数据库管理系统。
3. 实体关系模型实体关系模型是数据库设计中常用的概念模型,它通过实体、属性和关系描述现实世界的数据结构。
实体表示现实世界中的对象,属性表示实体的特性,关系表示实体之间的联系。
4. 范式理论范式理论是数据库设计中的重要概念,它描述了数据的结构和依赖关系。
常用的范式包括第一范式(1NF)、第二范式(2NF)和第三范式(3NF)。
设计师需要根据需求和数据特点选择合适的范式,并遵循范式理论进行设计。
三、实验设计过程本次实验的数据库设计目标是创建一个图书管理系统。
根据需求分析,我们确定了以下实体和关系:1. 实体:- 书籍(书名、作者、出版社、出版日期、价格等属性)- 读者(姓名、年龄、性别、联系方式等属性)- 图书馆(名称、地址、管理员等属性)2. 关系:- 借阅关系(读者ID、书籍ID、借阅日期、归还日期等属性)根据实体关系模型和范式理论,我们进行了如下设计过程:1. 概念设计:根据需求分析,我们创建了实体-属性关系图,明确了实体和属性之间的关系。
2. 逻辑设计:根据概念设计的结果,我们将实体关系图转化为关系模式,并进行了范式分析。
通过分析,我们确定了每个关系模式的主键和外键,并消除了冗余和不合理的依赖关系。
数据库系统设计实验报告-自己做的超完整
《数据库管理与开发》实验报告课程号:B0900990-0实验项目:数据库设计、创建,表及各种对象的创建、管理与应用(2)、全部选中之后然后点击“执行”,就会执行相应的语句,并在命令窗口显示“命令已经成功完成”。
如下图所示:(3)、然后刷新左边的数据库,就会出现我们所建立的OnlineShopping数据库。
(4)、然后找到E盘的OnlineShopping文件夹,点击进入之后就会看到包含我们所建立的数据文件和事务日志文件。
说明创建数据库成功。
2.在数据库中建表。
(1)、创建“客户表”。
(2)、创建“商品表”。
(3)、创建“生产厂商表”。
(4)、创建“商品类别表”。
(5)、创建“订单总表”。
(6)、创建“订单明细表”。
(7)、创建“供应表”。
注意这个表有点特殊的是:由两个属性共同的作为主键,要用CONSTRAIT 主键名PRIMARY KEY(属性A,属性B)(8)、创建“评论表”。
(9)、表全部创建完成之后,刷新数据库,可以看到这些表。
3、在数据库中创建索引。
说明:索引包含“唯一性索引”,“主键索引”,“聚集索引”。
因为生成的表的时候系统自动的为每一个表设置了“主键索引”如图所示,“聚集索引”是指表中的各记录的物理顺序与键值的逻辑顺序一致。
一张表中只能有一个“聚集索引”。
而系统中的这个主键索引也是聚集索引,所以不能再对表格创建聚集索引。
所以我下面创建的是唯一性索引,全部都是非聚集索引。
(1)、在“客户表”中创建了一个按“身份证号”列建立的唯一索引“Customer”。
说明:这里创建的是唯一索引,唯一索引的含义是对于表中的任何两行记录来说,索引键的值都各不相同。
并且要注意,如果表中一个字段或者多个字段的组合在多行记录中具有NULL值,则不能将这个字段或者字段组合作为唯一索引键。
因为对于每一个表的主键系统都自动的设置了相应的索引,在“客户表”中,身份证号是绝对不能相同的,所以可以设置为唯一索引键。
(2)、在“商品表”中创建了一个按“单价”列建立的非聚集索引“Goods”。
数据库系统设计实验报告
数据库系统设计实验报告――教务管理系统学院:计算机科学与技术专业:软件工程班级:学号:姓名:指导老师:一、概述项目背景:数据库课程设计系统名称:教务管理系统开发环境:SQL Server 2008二、需求分析1、系统的概述⏹一个学校由很多个学院组成,每个学院有多个专业,每个专业有1个或者多个班级。
一个学生只属于1个班级,学生有姓名、学号、性别、身份证号、入学时间等属性。
⏹每个专业的每个年级都有对应的教学计划。
教学计划指定了这个专业这个年级的某门课程在那个学期上,学分、学时是多少。
每个学院都设置有1个教务秘书,这些信息都由教务秘书进行输入。
每个院系的课程都有自己的唯一编码,比如计算机系上的C语言,和电子系上的C语言,虽然都是同一门课,但是编码是不同的。
但是同一个院系中的相同的课程,课程代码是唯一的。
比如计算机学院的07计算机软件专业和计算机学院的07计算机科学专业都有C语言课程,这两门课程的课程代码是相同的。
⏹教务秘书在每个学期的中间时刻,为下一个学期进行排课,排课的内容根据教学计划,比如08计算机软件专业的学生,在2009-2010年第2学期上的课程,可以通过教学计划得知要上什么课程,然后对这些课程安排上课教师(比如陈越)、上课时间(比如星期2,第1-2节)和地点(理工楼234),有的课程是单周上,有的双周,也有是每周都上的。
⏹在每个学期期末,学生登录到网站上选择下一个学期需要上的课,选择的时刻,可以选择是否需要教材,如果某门课程的人数选满了,则不能给任何学生选择了。
⏹学生根据选择的课程进行上课,参加考试。
每个老师可以用自己的用户名和密码登陆网站,选择这个学期自己所教的课程(一个老师可以上多个班级的课程),输入这个班级的成绩,成绩分为期末考试成绩、期中考试成绩、平时成绩、实验成绩以及总评成绩。
这些成绩都需要进行存储。
⏹为了保证安全性,老师输入的成绩并不是直接放到最终的成绩表中,而是放在一个临时的表中,只有当教务秘书审核过后,才导入到最终的成绩表中。
深圳大学实验报告-数据库系统概论-交互式SQL语句
深圳大学实验报告课程名称:数据库系统概论实验项目名称:交互式SQL语句学院:CIE专业:IS指导教师:傅向华报告人:卢志敏学号:2006131114 班级: 3 实验时间:2008-10-20实验报告提交时间:2008-11-5教务处制一、实验目的与要求:一、实验目的通过本实验,掌握数据分析以及SQL语句的使用。
二、实验要求根据自己本学期选修课程的情况,分析学生、课程和教师之间的关系。
例如,一个学生可以选修多门课程,一门课程可以有多个学生选择,一个课程可以有多位教师讲授,一个教师也可以讲授多门课程,不同的学生可以选择不同教师的不同的课程,建立数据库并进行相关操作。
二、方法、步骤:1.利用SQL语句创建一个数据库和表,该数据库包含如下四个表:学生(学号,姓名,性别,班级,年龄,系别,籍贯,住址,电话号码)教师(教师工号,姓名,性别,系别)课程(课程号,课程名,教材,学分)(假设同一门课程只有一个课程号)选修关系(学号,课程号,教师工号,成绩)2.统计2个宿舍的学生选课情况,利用SQL语句往表中添加记录(每个表至少写出一个SQL语句);Student表:insertinto student (Sno,Sname,Ssex,Sage,Sdept,Sclass)values ('2006131145','崔元星','男',21,'IS','4')Teacher表:insertinto Teacher (Tno,Tname,Tsex,Tdept)values ('11111','傅向华','男','CS')Course表:insertinto Course (Cno,Cname,教材,Ccredit)values ('2213200104','计算机组成原理','计算机组成与结构(第四版)',4)SC表:insertinto SC (Sno,Cno,Tno,Grade)values ('2006131145','2313200501','11112','85')3.以上述数据库和记录为基础,进行如下查询,写出SQL语句和查询结果;(1)以自己的学号作为选择条件,查询自己本学期所修全部课程的课程号和课程名;(2)以自己选修课程的某位教师姓名为查询条件,查询选修该教师课程的所有学生的学号和姓名;(3 ) 查询自己选修的某位教师的某门课程的所有学生的学号,姓名以及电话号码;(4)查询自己选修的某位教师不同课程的学生人数;(5)查询不同课程成绩的最高分;(6)查询与自己同姓的所有学生的学号和姓名;(7)查询没有选修某位教师课程的学生学号和姓名;(8)查询选修了所有课程的学生学号和姓名;(9)查询至少选修了自己选修的全部课程的学生学号和姓名;(10)查询自己选修的所有课程中,超过平均成绩的课程号;4.写出如下操作的SQL语句:(1) 在学生表中添加电子邮件属性;(2) 从课程表中删除所有自己未选修的课程记录;(3)在上述表中插入自己上学期选修的一门课程的有关记录;(4)创建一个自己选课情况的视图,包括学号,姓名,课程名,教师姓名以及成绩等属性。
数据结构实验报告(实验)
深 圳 大 学 实 验 报 告课程名称: 数据结构实验与课程设计 实验项目名称: 实验一:顺序表的应用 学院: 计算机与软件学院 专业: 指导教师: **报告人: 文成 学号: ********** 班级: 5 实验时间: 2012-9-17实验报告提交时间: 2012-9-24教务部制一、实验目的与要求:目的:1.掌握线性表的基本原理2.掌握线性表地基本结构3.掌握线性表地创建、插入、删除、查找的实现方法要求:1.熟悉C++语言编程2.熟练使用C++语言实现线性表地创建、插入、删除、查找的实现方法二、实验内容:Problem A: 数据结构——实验1——顺序表例程Description实现顺序表的创建、插入、删除、查找Input第一行输入顺序表的实际长度n第二行输入n个数据第三行输入要插入的新数据和插入位置第四行输入要删除的位置第五行输入要查找的位置Output第一行输出创建后,顺序表内的所有数据,数据之间用空格隔开第二行输出执行插入操作后,顺序表内的所有数据,数据之间用空格隔开第三行输出执行删除操作后,顺序表内的所有数据,数据之间用空格隔开第四行输出指定位置的数据Sample Input611 22 33 44 55 66888 352Sample Output11 22 33 44 55 6611 22 888 33 44 55 6611 22 888 33 55 6622HINT第i个位置是指从首个元素开始数起的第i个位置,对应数组内下标为i-1的位置Problem B: 数据结构——实验1——顺序表的数据交换Description实现顺序表内的元素交换操作Input第一行输入n表示顺序表包含的·n个数据第二行输入n个数据,数据是小于100的正整数第三行输入两个参数,表示要交换的两个位置第四行输入两个参数,表示要交换的两个位置Output第一行输出创建后,顺序表内的所有数据,数据之间用空格隔开第二行输出执行第一次交换操作后,顺序表内的所有数据,数据之间用空格隔开第三行输出执行第二次交换操作后,顺序表内的所有数据,数据之间用空格隔开注意加入交换位置的合法性检查,如果发现位置不合法,输出error。
数据库实验报告范本(3篇)
第1篇实验名称:数据库设计与实现实验日期:2023年4月15日实验班级:计算机科学与技术专业1班实验学号:12345678一、实验目的1. 理解数据库设计的基本原理和方法。
2. 掌握数据库概念结构、逻辑结构和物理结构的设计。
3. 学会使用数据库设计工具进行数据库设计。
4. 能够使用SQL语句进行数据库的创建、查询、更新和删除等操作。
二、实验内容1. 数据库概念结构设计- 分析需求,确定实体和实体间的关系。
- 设计E-R图,表示实体、属性和关系。
2. 数据库逻辑结构设计- 将E-R图转换为关系模式。
- 设计关系模式,确定主键、外键等约束。
3. 数据库物理结构设计- 选择合适的数据库管理系统(DBMS)。
- 设计数据库表结构,包括字段类型、长度、索引等。
- 设计存储策略,如数据文件、索引文件等。
4. 数据库实现- 使用DBMS创建数据库。
- 创建表,输入数据。
- 使用SQL语句进行查询、更新和删除等操作。
三、实验步骤1. 数据库概念结构设计- 分析需求,确定实体和实体间的关系。
- 设计E-R图,表示实体、属性和关系。
2. 数据库逻辑结构设计- 将E-R图转换为关系模式。
- 设计关系模式,确定主键、外键等约束。
3. 数据库物理结构设计- 选择合适的数据库管理系统(DBMS)。
- 设计数据库表结构,包括字段类型、长度、索引等。
- 设计存储策略,如数据文件、索引文件等。
4. 数据库实现- 使用DBMS创建数据库。
- 创建表,输入数据。
- 使用SQL语句进行查询、更新和删除等操作。
四、实验结果与分析1. 数据库概念结构设计- 实体:学生、课程、教师、成绩。
- 关系:学生与课程之间有选课关系,教师与课程之间有授课关系。
2. 数据库逻辑结构设计- 学生表(学号,姓名,性别,年龄,班级号)。
- 课程表(课程号,课程名,学分,教师号)。
- 教师表(教师号,姓名,性别,年龄,职称)。
- 成绩表(学号,课程号,成绩)。
数据库学习实验报告(3篇)
第1篇一、实验目的本次实验旨在通过实际操作,加深对数据库基础知识的理解,掌握数据库的基本操作,包括数据库的创建、表的设计、数据的插入、查询、修改和删除等。
通过本次实验,提高对SQL语言的实际应用能力,为后续深入学习数据库知识打下坚实的基础。
二、实验环境1. 操作系统:Windows 102. 数据库管理系统:MySQL 5.73. 开发工具:MySQL Workbench三、实验内容1. 数据库的创建与删除2. 表的设计与数据类型3. 数据的插入、查询、修改和删除4. 索引与视图的应用四、实验步骤1. 数据库的创建与删除(1)创建数据库```sqlCREATE DATABASE db_student;```(2)删除数据库```sqlDROP DATABASE db_student;```2. 表的设计与数据类型(1)创建学生表```sqlCREATE TABLE student (id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(50),age INT,gender ENUM('男', '女'),class VARCHAR(50));```(2)创建课程表```sqlCREATE TABLE course (id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(50),credit INT);```3. 数据的插入、查询、修改和删除(1)插入数据```sqlINSERT INTO student (name, age, gender, class) VALUES ('张三', 20, '男', '计算机科学与技术');INSERT INTO course (name, credit) VALUES ('高等数学', 4);```(2)查询数据```sql-- 查询所有学生信息SELECT FROM student;-- 查询年龄大于20岁的学生信息SELECT FROM student WHERE age > 20;-- 查询课程名称为“高等数学”的课程信息SELECT FROM course WHERE name = '高等数学';```(3)修改数据```sql-- 修改学生张三的年龄为21岁UPDATE student SET age = 21 WHERE name = '张三';-- 修改课程“高等数学”的学分UPDATE course SET credit = 5 WHERE name = '高等数学';```(4)删除数据```sql-- 删除学生张三的信息DELETE FROM student WHERE name = '张三';-- 删除课程“高等数学”的信息DELETE FROM course WHERE name = '高等数学'; ```4. 索引与视图的应用(1)创建索引```sql-- 创建学生表id字段的索引CREATE INDEX idx_student_id ON student(id); -- 创建课程表name字段的索引CREATE INDEX idx_course_name ON course(name); ```(2)创建视图```sql-- 创建包含学生姓名和课程名称的视图CREATE VIEW student_course_view ASSELECT , FROM studentJOIN course ON student.class = course.id;```(3)查询视图数据```sql-- 查询视图中的数据SELECT FROM student_course_view;```五、实验总结通过本次实验,我深入了解了数据库的基本操作,掌握了SQL语言的运用。
数据库设计实验报告
数据库设计实验报告数据库设计课程实验报告学院:班级:完成⼈:姓名:学号:指导教师:数据库设计实验任务书⼀、课程实验题⽬:图书管理⼆、课程实验应解决的主要问题:(1)分析图书管理设计中包含的实体,实体属性,实体之间的关系(1)对实体中相应的数据项给出详细的数据字典描述(1)以powerDesigher为建模⼯具,对数据库进⾏逻辑设计(1)设计的关系模式需进⾏规范化处理,每个关系模式应能达到3NF(1)设计事务,涉及到检索和更新等(2)绘制事务图,使⽤路径指⽰ER模型⽀持的⽤户事务(3)根据逻辑设计原则(多样性),转化为相应数据表,并标明主键、外键(4)相应事务要求⽤SQL语⾔实现,并⽤到触发器、存储过程,视图等数据操作(5)应⽤⾃⼰熟悉的⾼级程序设计语⾔,实现系统主要功能三、任务发出⽇期:课程实验完成⽇期:指导教师对课程实验的评价成绩:指导教师签字:年⽉⽇⽬录1业务分析 (1)1.1原管理系统分析 (1)1.2所建系统分析 (1)1.3可⾏性分析 (1)1.3.1经济可⾏性分析 (1)1.3.2技术可⾏性分析 (2)1.3.3社会可⾏性分析 (2)2实体描述(属性,关系,参与类型) (2)2.1管理员管理E R图 (2)2.2读者借阅归还E R图 (3)3数据字典说明 (3)4事务设计 (4)4.1管理员模块 (4)4.2读者管理模块 (4)4.3图书信息管理模块 (5)4.4图书类别管理模块 (5)4.5图书借阅归还管理模块 (5)4.6读者留⾔管理模块 (5)5PowerDesigner建模 (5)6事务路径图或事务描述 (6)7映射为对应数据表 (7)7.1管理员数据表 (7)7.2读者数据表 (7)7.3图书数据表 (8)7.4图书类别数据表 (8)7.5借还书记录数据表 (9)7.6⽤户留⾔数据表 (9)8规范化检查和说明 (10)8.1规范化⽅法检查表结构 (10)8.2检查表是否⽀持⽤户事务 (10)8.3检查业务规则 (10)9S Q L操作 (10)9.1创建索引 (10)9.2创建视图 (12)9.3设计触发器 (13)9.4设计存储过程(例:读者注册信息) (14) 10实现界⾯ (15)10.1登录页⾯ (16)10.2管理员界⾯ (16)10.2.1 管理员主页⾯ (16)10.2.2图书类别 (16)10.2.3图书管理 (17)10.2.3.1 添加图书 (17)10.2.3.2 修改、删除图书 (18)10.2.3.3查看图书 (18)10.2.4借阅管理(借阅、归还、续借) (19) 10.2.5在线留⾔管理 (19)10.2.6管理员管理 (20)10.3读者界⾯ (20)10.3.1读者注册 (20)10.3.2读者主页⾯ (21)10.3.3读者分类查询 (38)10.3.4读者借阅图书 (21)10.3.5读者归还图书 (22)10.3.6读者续借图书 (23)11任务分⼯1.业务分析1.1原图书管理系统分析图书馆是获取信息重要途径之⼀,对图书馆的信息化管理将⼤⼤提⾼图书资源的利⽤和信息的交换速度。
数据库系统设计实验报告-自己做的超完整
《数据库管理与开发》实验报告课程号:B0900990-0实验项目:数据库设计、创建,表及各种对象的创建、管理与应用(2)、全部选中之后然后点击“执行”,就会执行相应的语句,并在命令窗口显示“命令已经成功完成”。
如下图所示:(3)、然后刷新左边的数据库,就会出现我们所建立的OnlineShopping数据库。
(4)、然后找到E盘的OnlineShopping文件夹,点击进入之后就会看到包含我们所建立的数据文件和事务日志文件。
说明创建数据库成功。
2.在数据库中建表。
(1)、创建“客户表”。
(2)、创建“商品表”。
(3)、创建“生产厂商表”。
(4)、创建“商品类别表”。
(5)、创建“订单总表”。
(6)、创建“订单明细表”。
(7)、创建“供应表”。
注意这个表有点特殊的是:由两个属性共同的作为主键,要用CONSTRAIT 主键名PRIMARY KEY(属性A,属性B)(8)、创建“评论表”。
(9)、表全部创建完成之后,刷新数据库,可以看到这些表。
3、在数据库中创建索引。
说明:索引包含“唯一性索引”,“主键索引”,“聚集索引”。
因为生成的表的时候系统自动的为每一个表设置了“主键索引”如图所示,“聚集索引”是指表中的各记录的物理顺序与键值的逻辑顺序一致。
一张表中只能有一个“聚集索引”。
而系统中的这个主键索引也是聚集索引,所以不能再对表格创建聚集索引。
所以我下面创建的是唯一性索引,全部都是非聚集索引。
(1)、在“客户表”中创建了一个按“身份证号”列建立的唯一索引“Customer”。
说明:这里创建的是唯一索引,唯一索引的含义是对于表中的任何两行记录来说,索引键的值都各不相同。
并且要注意,如果表中一个字段或者多个字段的组合在多行记录中具有NULL值,则不能将这个字段或者字段组合作为唯一索引键。
因为对于每一个表的主键系统都自动的设置了相应的索引,在“客户表”中,身份证号是绝对不能相同的,所以可以设置为唯一索引键。
(2)、在“商品表”中创建了一个按“单价”列建立的非聚集索引“Goods”。
深圳大学数据库设计性实验报告概要
则得到总的 E-R 图:
学生实体的 E-R 图为:包括学号、姓名、性别、年龄、民族、电话、院系、E-MAIL、 QQ 号、政治面貌
MAIL、父亲 FATHER、母亲 MOTHER、联系电话 PHONE
(一)确定系统中存在的有用实体
根据需求分析,在学生信息管理系统中,需要完成学生基本信息、 家庭信息、奖惩信息和成绩信息的管理。我们可以很容易知道本系统 中主要涉及学生、家庭、奖惩和课程等四个实体。 (二) 、确定实体之间联系的类型 实体之ቤተ መጻሕፍቲ ባይዱ联系主要存在三种,分别是:一对一联系(1:1),一对多 联系(1:N)和多对多联系(M:N)。 根据需求分析,在学生信息管理系 统中一个学生只能拥有一个家庭,一个家庭也只有一个孩子在班级中 学习;一个学生可能有一条或多条奖惩信息;一个学生可以选修多门 课程,一门课程也可以被多个不同的学生选修等。因此,以上各实体 之间存在如下关系: 学生:家庭 学生:奖惩 学生:课程 学生:院系 1:1 1:N M:N N:1
深 圳 大 学 实 验 报 告
(管理学院适用) 课程名称: 实验项目名称: 指导教师: 报告人: 实验时间:
指导教师批阅意见:
数据库原理及应用 学生信息管理系统 专业: 学号: 班级: 实验报告提交时间:
成绩评定:
指导教师签字:
年 注:1、报告内的项目或内容设置,可根据实际情况加以调整和补充。 2、教师批改学生实验报告时间应在学生提交实验报告时间后 10 日内。 月 日
实验过程及内容: 1、需求分析: 1.1 用户需求分析: (一)问题描述:学生信息管理系统 主要实现功能: 1、学生信息查询功能:通过不同的检索入口,查询学生学籍信息、课程信息和成 绩信息,并进行排序。 2、 添加功能:通过填写表格的形式输入学生学籍信息、课程信息和成绩信息等相 关信息,系统能够自动避免重复信息。 3、 修改功能:对数据库中的信息进行修改。系统能够通过用户给出的条件查找所 要修改的信息,对修改后的信息进行保存,并自动查找是否是重复信息。 4、 删除功能:对数据进行删除操作。系统能够通过用户给出的条件查找出要删除 的信息,并提示是否确定删除,如果确定删除,则把相关信息从数据库汇中删 除掉。 5、 汇总功能:对信息进行汇总。 6、 统计功能:对信息进行统计,如统计不及格学生名单等。 (二)目的: 通过计算机来实现,将使得管理工作系统化、规范化、自动化,从而达到提 高学生信息管理效率的目的。 为了提高系统开发水平和应用效果,系统应符合学校学生信息管理的规定, 满足对学校学生信息管理的需要,并达到操作过程中的直观、方便、实用、安全 等要求。系统采用模块化程序设计的方法,便于系统功能的组合和修改,以及扩 充和维护。 1.2 业务流程分析: (一)描述系统的业务流程: 操作员能够通过不同的检索入口,查询学生的学籍信息、课程信息和成绩信 息等相关信息,并进行排序。能通过添加功能,以填写表格的形式输入学生的 学籍、课程和成绩信息并且系统恩能够自动避免重复信息。能够使用修改、删 除功能,也能实现汇总、统计功能。 (二)学生信息管理系统的全局数据流程图 首先需要收集的学生信息包括:1、学生的基本信息:姓名,性别,生日, 学生所在院系,所在班别,入学时间,入学成绩,电话,邮箱,父亲,母亲, 获奖情况,收到处分情况。2、课程信息:课程号,课程名,任课老师。3、成 绩信息:学号,课程号,成绩。 2、概念数据库设计 2.1、实体间的联系 (1)、学生基本信息表(student) :学号 S_NO、姓名 S_NAME、性别 SEX、生日 BIRTHDAY、年龄 AGE、所在院系 DEPT_NO、邮箱 E-MAIL、电话 PHONE_NO、 (2) 、成绩信息表(SCORES):学号 S_NO、课程号 C_NO、成绩 SCORE (3) 、课程信息(COURSE) :课程号 C_NO、学号 S_NO、课程名 C_NO、任课老 师 T_NAME (4) 、学籍变更信息表(schoolregister) :记录号 R_NO、学号 S_NO、变更情况 Change、记录时间 R_TIME、详细记录 R_DETAIL (5)、院系信息表( department) :院系编号 DEPT_NO 、学号 S_NO 、院系名称 DEPT_NAME (6) 、家庭信息表(family) :家庭编号 F_NO、家庭住址 ADDRESS、邮编
深圳大学数据库设计性实验报告
学生(学号,姓名,班级,性别,年龄,民族,电话,E-mail,QQ 号) 家庭(家庭编号,家庭住址,邮编,联系电话,家长姓名) 课程(课程号,课程名称,课程学分,授课学时) 院系(院号,院名,系主任) 教师(教师编号,姓名,性别,年龄,家庭住址,邮箱)
3.2 学生信息管理系统的各表的结构,如下表所示: 表1 数据库表名 STUDENT SCORES 数据信息表 对应的关系模式名 学生 成绩 中文说明 学生信息表 成绩信息表
表 7 院系信息表
字段名 D_NO D_NAME S_NO
字段类 型 VARCHAR VARCHAR VARCHAR
长度 10 10 10
主键或外键 FOREIGN KEY FOREIGN KEY
字段约束 NOT NULL NOT NULL NOT NULL
对应中文属性 名 院系编号 院系名称 学号
NOT NULL NOT NULL NOT NULL
课程号 学号 课程名
表 5 学籍信息表
字段名 R_NO S_NO CHANGE REWARD PUNISH
字段类型 VARCHAR VARCHAR VARCHAR VARCHAR VARCHAR
长度
主键或外键 10 PRIMARY KEY 10 FORGEIGN KEY 40 40 40
实验过程及内容: 1、需求分析: 1.1 用户需求分析: (一)问题描述:学生信息管理系统 主要实现功能: 1、学生信息查询功能:通过不同的检索入口,查询学生学籍信息、课程信息和成 绩信息,并进行排序。 2、 添加功能:通过填写表格的形式输入学生学籍信息、课程信息和成绩信息等相 关信息,系统能够自动避免重复信息。 3、 修改功能:对数据库中的信息进行修改。系统能够通过用户给出的条件查找所 要修改的信息,对修改后的信息进行保存,并自动查找是否是重复信息。 4、 删除功能:对数据进行删除操作。系统能够通过用户给出的条件查找出要删除 的信息,并提示是否确定删除,如果确定删除,则把相关信息从数据库汇中删 除掉。 5、 汇总功能:对信息进行汇总。 6、 统计功能:对信息进行统计,如统计不及格学生名单等。 (二)目的: 通过计算机来实现,将使得管理工作系统化、规范化、自动化,从而达到提 高学生信息管理效率的目的。 为了提高系统开发水平和应用效果,系统应符合学校学生信息管理的规定, 满足对学校学生信息管理的需要,并达到操作过程中的直观、方便、实用、安全 等要求。系统采用模块化程序设计的方法,便于系统功能的组合和修改,以及扩 充和维护。 1.2 业务流程分析: (一)描述系统的业务流程: 操作员能够通过不同的检索入口,查询学生的学籍信息、课程信息和成绩信 息等相关信息,并进行排序。能通过添加功能,以填写表格的形式输入学生的 学籍、课程和成绩信息并且系统恩能够自动避免重复信息。能够使用修改、删 除功能,也能实现汇总、统计功能。 (二)学生信息管理系统的全局数据流程图 首先需要收集的学生信息包括:1、学生的基本信息:姓名,性别,生日, 学生所在院系,所在班别,入学时间,入学成绩,电话,邮箱,父亲,母亲, 获奖情况,收到处分情况。2、课程信息:课程号,课程名,任课老师。3、成 绩信息:学号,课程号,成绩。 2、概念数据库设计 2.1、实体间的联系 (1)、学生基本信息表(student) :学号 S_NO、姓名 S_NAME、性别 SEX、生日 BIRTHDAY、年龄 AGE、所在院系 DEPT_NO、邮箱 E-MAIL、电话 PHONE_NO、 (2) 、成绩信息表(SCORES):学号 S_NO、课程号 C_NO、成绩 SCORE (3) 、课程信息(COURSE) :课程号 C_NO、学号 S_NO、课程名 C_NO、任课老 师 T_NAME (4) 、学籍变更信息表(schoolregister) :记录号 R_NO、学号 S_NO、变更情况 Change、记录时间 R_TIME、详细记录 R_DETAIL (5)、院系信息表( department) :院系编号 DEPT_NO 、学号 S_NO、院系名称 DEPT_NAME (6) 、家庭信息表(family) :家庭编号 F_NO、家庭住址 ADDRESS、邮编
数据库设计实验报告5篇
数据库设计实验报告数据库设计实验报告5篇在不断进步的时代,需要使用报告的情况越来越多,写报告的时候要注意内容的完整。
相信很多朋友都对写报告感到非常苦恼吧,以下是小编为大家收集的数据库设计实验报告,仅供参考,希望能够帮助到大家。
数据库设计实验报告1有关于数据库实验的心得体会,总的来说,受益匪浅。
在这些天中,我们学到了很多东西,包括建表,导入数据,查询,插入。
最重要的是我们有机会用电脑自己进行实践,没接触的时候总是觉得它比较深奥或是不可接近的新型语言,尽管自己对C语言非常感兴趣,但还是有些心理上的陌生感。
学习数据库就和我们平时的其它科目学习一样感觉它有永无止境的知识,数据库是我在高中时候听过,到了大学渐渐了解了些,但就其原理性的内容还不知道,也就是根本就不清楚什么是数据库,只是知道一个所谓的中国字典里的名词。
我认识它是从我接触实验运作开始的,刚开始就是建立数据库,两种验证模式,没什么东西但还觉得不错。
进而就是操作语言了,紧接着就是触发器的使用,进而对数据库高级的使用,等等。
开始知道数据库的时候想学,不知道从何而起,不懂的话怎么问,从什么地方学起。
后来到大三开学后有数据库原理必修课,非常高兴。
当时感觉SQL Sever数据库管理既然是单独一门课程一定会讲的比较细,也能学到真正实用的内容。
学了这门课以后发现和我想的基本是一样的,老师对学生也比较和蔼可亲,对我们要求也不是很紧。
让每个人都觉得轻轻松松就能把这门课程学完,没有多么紧张的作业,也没有太苛刻的要求。
当老师在最后说这个课程结束了,回顾一下以前老师给我们讲过的东西,真的有很多是我们应该去注意的。
学习完SQL Sever数据库后感觉可分两大块,一块是开发,一块是管理。
开发主要是写写存储过程、触发器什么的,还有就是用Oracle的Develop工具做form。
有点类似于程序员。
开发还需要有较强的逻辑思维和创造能力,自己没有真正做过,但感觉应该会比较辛苦,是青春饭;管理则需要对SQL Sever数据库的原理有深刻的认识,有全局操纵的能力和紧密的思维,责任较大,因为一个小的失误就会弄掉整个数据库,相对前者来说,后者更看重经验。
数据库设计实验报告
数据库设计实验报告一、实验目的本次实验旨在通过设计一个数据库,加深对数据库设计原理和方法的理解,掌握数据库设计工具的使用,提高数据库设计能力。
二、实验环境本次实验使用MySQL数据库管理系统,并借助MySQL Workbench进行数据库设计和建模。
三、实验步骤1. 确定数据库需求:根据一个图书管理系统的需求,确定数据库中需要包含的实体、属性及它们之间的关系。
2. 实体关系模型设计:绘制ER图,表示各个实体之间的关系,包括实体的属性和主键。
3. 范式分解:将设计得到的实体关系模型转化为符合第三范式的关系模式。
4. 数据库物理设计:根据第三步得到的关系模式设计数据库的物理结构,确定表的字段、数据类型、约束等。
5. 创建数据库:在MySQL中创建数据库,并创建相应的表。
6. 插入数据:向数据库中插入一些测试数据,以便后续查询和操作。
7. 查询测试:通过SQL语句进行查询操作,检查数据库设计的正确性和完整性。
8. 实验总结:总结本次实验的过程和收获,对所学知识进行总结和回顾。
四、实验设计根据设计要求,我们设计了一个简单的图书管理系统数据库,包括以下几个表:1. 书籍表(Book)- 书籍编号(BookID)- 书名(Title)- 作者(Author)- 出版社(Publisher)- 出版日期(PublishDate)2. 借阅者表(Reader)- 借阅者编号(ReaderID)- 姓名(Name)- 性别(Gender)- 手机号(Phone)3. 借阅记录表(BorrowRecord)- 记录编号(RecordID)- 书籍编号(BookID)- 借阅者编号(ReaderID)- 借阅日期(BorrowDate)- 应还日期(DueDate)- 实际还书日期(ReturnDate)四、实验结果经过实验设计和数据库创建,数据库成功搭建完成。
我们通过一系列SQL查询操作,验证了数据库的正确性和完整性,包括图书信息的查询、借阅者信息的查询、借阅记录的查询等。
数据库设计实验报告
数据库设计实验报告
在进行一个大型应用程序的开发之前,通常必须要先进行数据库设计。
数据库设计是
一门重要的技能,应用程序的性能和可扩展性取决于它的数据库设计。
本次实验主要是采
用ER图的思想,建立了多表的关系,使用Mysql来创建数据库并实现关系。
首先,我们需要确定应用程序的范围,来确定ER图中的实体,关系,属性等信息。
本次实验的话题是一个真实的餐厅管理应用程序,建立的ER图主要有四个实体,即客户,员工,产品和消费品。
在这些实体之间,建立了一些关系,比如客户可以下订单,员工可
以安排配送等。
还要确定每个实体的属性,比如客户的姓名和电话号码,产品的价格和库
存内容等。
接下来我们要使用Mysql来创建数据库,给上面的ER图中的每个实体创建一张表,
并在每张表中定义相应的字段,使表能够表达实体和它的属性信息。
然后,我们要在表之
间建立多对多,一对多和一对一的关系,使表中的数据更容易地关联和交互。
最后,要为
表定义索引,以便更快地获取数据。
本次实验在设计完ER图和数据库结构后,我们可以使用Mysql语句来插入和查询数据,以进一步验证ER图和数据库的设计正确性。
总的来说,本次实验的目的是为了体现
出ER图的思想,借此来建立数据库并实现不同表之间的关系,为今后的应用程序开发打
下坚实的基础。
数据库课程设计实验报告
数据库课程设计实验报告一、实验目的本实验旨在通过设计和实现一个数据库应用系统,提高学生对数据库原理的理解和实践能力。
具体目标包括:1. 了解数据库设计的基本原理和方法;2. 掌握数据库应用系统的设计和实现方法;3. 学习使用数据库管理系统(DBMS)进行数据库操作;4. 实践使用SQL语言进行数据库查询和数据处理;5. 培养软件工程和团队协作能力。
二、实验内容1. 需求分析:通过与用户的交流与了解,明确数据库应用系统的功能需求和性能要求,并进行需求分析和模型建立。
2. 数据库设计:根据需求分析的结果,设计数据库的逻辑结构和物理结构,包括数据模型的选择、实体-关系模型的设计、表的设计和各种约束关系的定义。
3. DBMS的选择与安装:根据数据库设计的需求和性能要求,选择合适的数据库管理系统,并进行安装和配置。
4. 数据的导入与导出:将实验所需的数据导入到数据库中,并进行数据的备份和恢复。
5. 数据库查询和操作:通过SQL语言进行数据库的查询、插入、更新和删除操作,包括单表查询、多表查询、排序和分组等操作。
6. 应用系统的设计与实现:根据数据库设计的结构,设计应用系统的界面和交互逻辑,并进行编码和测试。
7. 性能优化:通过索引的设计和优化、查询的优化和分析,提高数据库应用系统的性能和效率。
8. 安全与权限管理:设计并实现数据库的用户权限管理和数据安全机制,保护数据库的安全性和完整性。
三、实验步骤1. 根据实际情况选择合适的数据库应用系统主题,并进行需求分析和模型建立。
2. 根据需求分析的结果,设计数据库的逻辑结构和物理结构,包括数据模型的选择、实体-关系模型的设计、表的设计和各种约束关系的定义。
3. 根据数据库设计的需求和性能要求,选择合适的数据库管理系统,并进行安装和配置。
4. 将实验所需的数据导入到数据库中,并进行数据的备份和恢复。
5. 使用SQL语言进行数据库的查询、插入、更新和删除操作,包括单表查询、多表查询、排序和分组等操作。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MAIL、父亲 FATHER、母亲 MOTHER、联系电话 PHONE
(一)确定系统中存在的有用实体
根据需求分析,在学生信息管理系统中,需要完成学生基本信息、 家庭信息、奖惩信息和成绩信息的管理。我们可以很容易知道本系统 中主要涉及学生、家庭、奖惩和课程等四个实体。 (二) 、确定实体之间联系的类型 实体之间联系主要存在三种,分别是:一对一联系(1:1),一对多 联系(1:N)和多对多联系(M:N)。 根据需求分析,在学生信息管理系 统中一个学生只能拥有一个家庭,一个家庭也只有一个孩子在班级中 学习;一个学生可能有一条或多条奖惩信息;一个学生可以选修多门 课程,一门课程也可以被多个不同的学生选修等。因此,以上各实体 之间存在如下关系: 学生:家庭 学生:奖惩 学生:课程 学生:院系 1:1 1:N M:N N:1
3.1 转化为关系数据模型
学生(学号,姓名,班级,性别,年龄,民族,电话,E-mail,QQ 号) 家庭(家庭编号,家庭住址,邮编,联系电话,家长姓名) 课程(课程号,课程名称,课程学分,授课学时) 院系(院号,院名,系主任) 教师(教师编号,姓名,性别,年龄,家庭住址,邮箱)
3.2 学生信息管理系统的各表的结构,如下表所示: 表1 数据库表名 STUDENT SCORES 数据信息表 对应的关系模式名 学生 成绩 中文说明 学生信息表 成绩信息表
字段约束 NOT NULL NOT NULL NOT NULL NOT NULL NOT NULL
对应中文属性名 记录号 学号 学籍变更情况 奖励情况 处罚情况
表 6 家庭信息表
字段名 F_NO S_NO ADDRESS MAIL F_NAME M_NAME PHONE_N O1
字段类型 VARCHAR VARCHAR VARCHAR DATETIME VARCHAR VARCHAR VARCHAR
实验目的与要求: 建立一个 C/S 结构的学生信息管理系统, 学生信息的管理通过计算机来实现,将使得 管理工作系统化、规范化、自动化,从而达到提高学生信息管理效率的目的。 为了提高系统开发水平和应用效果,系统应符合学校学生信息管理的规定,满足对 学校学生信息管理的需要,并达到操作过程中的直观、方便、实用、安全等要求。系统 采用模块化程序设计的方法,便于系统功能的组合和修改,以及扩充和维护。基本功能 要求如下: 1、 学生信息查询功能:通过不同的检索入口,查询学生学籍信息、课程信息和 成绩信息,并进行排序。 2、 添加功能: 通过填写表格的形式输入学生学籍信息、课程信息和成绩信息等 相关信息,系统能够自动避免重复信息。 3、 修改功能: 对数据库中的信息进行修改。 系统能够通过用户给出的条件查找 所要修改的信息,对修改后的信息进行保存,并自动查找是否是重复信息。 4、 删除功能: 对数据进行删除操作。系统能够通过用户给出的条件查找出要删 除的信息,并提示是否确定删除,如果确定删除,则把相关信息从数据库汇 中删除掉。 5、 汇总功能:对信息进行汇总。 6、 统计功能:对信息进行统计,如统计不及格学生名单等。 方法、步骤: 1、 需求分析:阐明应用系统的背景,组织结构情况以及需求分析的过程,并绘制数 据流程图。 2、 概念数据库设计:根据概念结构设计的基本原则,确定概念模型,并阐明分析步骤 和理论依据。 3、 逻辑数据库设计:根据需求分析和概念模型,将实体及实体间的联系按照一定的转 换规则转换为关系模型,写出转换步骤及相应的理论依据,并确定主键、外键。 4、 用 SQL 语句实现数据库结构。
表 7 院系信息表
字段名 D_NO D_NAME S_NO
字段类 型 VARCHAR VARCHAR VARCHAR
长度 10 10 10
主键或外键 FOREIGN KEY FOREIGN KEY
字段约束 NOT NULL NOT NULL NOT NULL
对应中文属性 名 院系编号 院系名称 学号
10 FOREIGN KEY 10 FOREIGN KEY 6
对应中文属性 名 学号 课程号 成绩
表 4 课程信息表
字段名
字段类 型
长度
主键或外键
字段约束
对应中文属性名
C_NO S_NO C_NAME
VARCHAR VARCHAR VARCHAR
10 PRIMARY KEY 10 FOREIGN KEY 10
NOT NULL NOT NULL NOT NULL
课程号 学号 课程名
表 5 学籍信息表
字段名 R_NO S_NO CHANGE REWARD PUNISH
字段类型 VARCHAR VARCHAR VARCHAR VARCHAR VARCHAR
长度
主键或外键 10 PRIMARY KEY 10 FORGEIGN KEY 40 40 40
院系编号 院系名称
系主任
3、逻辑数据库设计
E-R 图表示的是数据库的概念模型,它独立于任何一种数据模型,独立 于任何一种具体的数据库管理系统,因此,需要把上述的概念模型转换为具 体的被数据库管理系统所支持的数据模型,这就是数据库的逻辑结构设计。 首先,根据完整的 E-R 图,将其转换为相应的关系模式。
家庭住址
学籍变更 情况
奖励情况
课程的 E-R 图为:课程编号、课程名称、课程学分、授课学时
课程 课程号 授课学时
课程名称
课程学分
教师信息的 E-R 图为:老师编号、老师姓名、性别、生日、家庭住址、邮箱
教师信息 教师编号 姓名 生日 家庭住址
性别
邮箱
院系的 E-R 图为; 院系编号、院系名称、系主任 院系
对应中文属性 名 学号 姓名 性别 生日 年龄 所在院系 邮箱 电话号码
10 10 FOREIGN KEY 10 16
表 3 成绩信息表
字段名 S_NO C_NO SCORE
字段类型 VARCHER VARCHER VARCHER
长度
主键或外键
字段约束 NOT NULL NOT NULL NOT NULL
则得到总的 E-R 图:
学生实体的 E-R 图为:包括学号、姓名、性别、年龄、民族、电话、院系、E-MAIL、 QQ 号、政治面貌
姓名 学号
性别 年龄
政治面貌
学生
民族
QQ 号 E-mail 院系
电话
家庭的 E-R 图为:包括家庭编号、家家庭编号 联系电话 家长姓名 邮编 奖惩的 E-R 图为:包括奖惩编号、奖惩原因、奖惩内容、奖惩时间 学籍 学籍编号 处罚情况
长度
主键或外键
字段约束 NOT NULL NOT NULL NOT NULL DEFAULT'男' NOT NULL NOT NULL NOT NULL
10 PRIMARY KEY 10 PRIMARY KEY 4
对应中文属性 名 家庭编号 学号 家庭地址 邮编 父亲 母亲 电话号码
10 10 16
COURSE SCHOOLCENCUS REWARD PUNISH DEPTMENT FAMILY
课程 学籍 奖励 处罚 院系 家庭
课程信息表 学籍信息变更表 奖励情况表 处罚情况表 院系信息表 家庭信息表
表 2 学生信息表
字段名 S_NO S_NAME SEX BIRTHDAY AGE DEPT_NO E-MAIL PHONE_NO
深 圳 大 学 实 验 报 告
(管理学院适用) 课程名称: 实验项目名称: 指导教师: 报告人: 实验时间:
指导教师批阅意见:
数据库原理及应用 学生信息管理系统 专业: 电子商务 学号: 班级: 实验报告提交时间:
成绩评定:
指导教师签字:
年 注:1、报告内的项目或内容设置,可根据实际情况加以调整和补充。 2、教师批改学生实验报告时间应在学生提交实验报告时间后 10 日内。 月 日
字段类型 VARCHAR VARCHAR VARCHAR DATETIME VARCHAR VARCHAR VARCHAR VARCHAR
长 主键或外键 度 10 PRIMARY KEY 10 4
字段约束 NOT NOT NOT 男' NOT NOT NOT NOT NOT NULL NULL NULL DEFAULT' NULL NULL NULL NULL NULL
实验过程及内容: 1、需求分析: 1.1 用户需求分析: (一)问题描述:学生信息管理系统 主要实现功能: 1、学生信息查询功能:通过不同的检索入口,查询学生学籍信息、课程信息和成 绩信息,并进行排序。 2、 添加功能:通过填写表格的形式输入学生学籍信息、课程信息和成绩信息等相 关信息,系统能够自动避免重复信息。 3、 修改功能:对数据库中的信息进行修改。系统能够通过用户给出的条件查找所 要修改的信息,对修改后的信息进行保存,并自动查找是否是重复信息。 4、 删除功能:对数据进行删除操作。系统能够通过用户给出的条件查找出要删除 的信息,并提示是否确定删除,如果确定删除,则把相关信息从数据库汇中删 除掉。 5、 汇总功能:对信息进行汇总。 6、 统计功能:对信息进行统计,如统计不及格学生名单等。 (二)目的: 通过计算机来实现,将使得管理工作系统化、规范化、自动化,从而达到提 高学生信息管理效率的目的。 为了提高系统开发水平和应用效果,系统应符合学校学生信息管理的规定, 满足对学校学生信息管理的需要,并达到操作过程中的直观、方便、实用、安全 等要求。系统采用模块化程序设计的方法,便于系统功能的组合和修改,以及扩 充和维护。 1.2 业务流程分析: (一)描述系统的业务流程: 操作员能够通过不同的检索入口,查询学生的学籍信息、课程信息和成绩信 息等相关信息,并进行排序。能通过添加功能,以填写表格的形式输入学生的 学籍、课程和成绩信息并且系统恩能够自动避免重复信息。能够使用修改、删 除功能,也能实现汇总、统计功能。 (二)学生信息管理系统的全局数据流程图 首先需要收集的学生信息包括:1、学生的基本信息:姓名,性别,生日, 学生所在院系,所在班别,入学时间,入学成绩,电话,邮箱,父亲,母亲, 获奖情况,收到处分情况。2、课程信息:课程号,课程名,任课老师。3、成 绩信息:学号,课程号,成绩。 2、概念数据库设计 2.1、实体间的联系 (1)、学生基本信息表(student) :学号 S_NO、姓名 S_NAME、性别 SEX、生日 BIRTHDAY、年龄 AGE、所在院系 DEPT_NO、邮箱 E-MAIL、电话 PHONE_NO、 (2) 、成绩信息表(SCORES):学号 S_NO、课程号 C_NO、成绩 SCORE (3) 、课程信息(COURSE) :课程号 C_NO、学号 S_NO、课程名 C_NO、任课老 师 T_NAME (4) 、学籍变更信息表(schoolregister) :记录号 R_NO、学号 S_NO、变更情况 Change、记录时间 R_TIME、详细记录 R_DETAIL (5)、院系信息表(department) :院系编号 DEPT_NO、学号 S_NO、院系名称 DEPT_NAME (6) 家庭信息表(family) 、 :家庭编号 F_NO、家庭住址 ADDRESS、邮编