数据库课程实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程实验报告课程名称:数据库系统原理
专业班级:CS1110
学号:U201114468
姓名:梅超
指导教师:杨茂林
报告日期:2014年6月23日
计算机科学与技术学院
目录
1实验目的与内容 (1)
1.1实验目的 (1)
1.2实验内容 (1)
2系统分析与设计 (2)
2.1系统分析 (2)
2.2系统设计 (3)
2.2.1数据库设计 (3)
2.2.2功能模块设计 (4)
3系统实现 (5)
3.1数据库的实现 (5)
3.2模块功能实现 (6)
3.2.1开发环境 (6)
3.2.2模块实现 (6)
3.2.2.1系统登录模块设计 (6)
3.2.2.2系统注册模块设计 (9)
3.2.2.3数据库主界面设计 (11)
3.2.2.4学生信息查询模块设计 (16)
3.2.2.5学生信息插入模块设计 (19)
3.2.2.6学生信息删除模块设计 (22)
3.2.2.7学生信息修改模块设计 (26)
3.2.2.8课程信息查询模块设计 (29)
3.2.2.9课程信息插入模块设计 (30)
3.2.2.10课程信息删除模块设计 (31)
3.2.2.11课程信息修改模块设计 (32)
3.2.2.12选课信息查询模块设计 (33)
3.2.2.13选课信息插入模块设计 (34)
3.2.2.14选课信息删除模块设计 (35)
3.2.2.15选课信息修改模块设计 (36)
3.2.2.16SQL复杂操作模块设计 (37)
4总结 (40)
参考文献 (41)
1实验目的与内容
1.1实验目的
本综合实验的目的主要是通过理论联系实际,巩固课堂所学理论知识,如关系数据库规范化理论与数据库设计的方法,同时提高实践能力和创新能力,培养数据库应用系统开发的能力,以及技术总结和撰写实验报告的基本技能。
1.2实验内容
设计一个学生-课程信息管理系统,实现以下功能:
1.实现对学生信息的查询、插入、删除、修改
2.实现对课程信息的查询、插入、删除、修改
3.实现对学生选课信息的查询、插入、删除、修改
4.通过SQL语句实现多表连接复杂查询
5.实现新建用户功能
2系统分析与设计
2.1系统分析
2.1.1需求分析
根据分析,本系统的实体有学生、课程和选课信息。
描述学生的属性有:学号、姓名、性别、年龄、所在院系。
描述课程的属性有:课程号、课程名称、学分
描述选课信息的属性有:学号、课程号、考试成绩。
一个学生可选多门课程,一门课程可被多个选手选择,因此数据库系统E-R图如图2.1所示。
图 2.1
2.1.2数据字典
(1)学生数据
属性类型含义Sno Char(9)学号
Sname Char(20)姓名
Ssex Char(2)性别
Sage Smallint年龄
Sdept Char(20)院系
表 2.1
(2)课程数据
属性类型含义
Cno Char(4)课程号
Cname Char(20)课程名
Ccredit Smallint学分
表 2.2
(3)选课数据
属性类型含义
Sno Char(9)学号
Cno Char(4)课程号
Grade Smallint成绩
表 2.3
2.2系统设计
2.2.1数据库设计
(1)数据库关系逻辑模式:
学生表Student(Sno,Sname,Ssex,Sage,Sdept)
课程表Course(Cno,Cname,Ccredit)
选课表SC(Sno,Cno,Grade)
(2)索引表
学生信息索引表:
列名Sno Sname Ssex Sage Sdept 索引主无无无无
表 2.4
课程信息索引表:
列名Cno Cname Ccredit
索引主无无
表 2.5
选课信息索引表:
列名Sno Cno Grade
索引主无
2.2.2功能模块设计
系统功能模块图如图2.2所示。
图 2.2
由图可知:系统主要由四个模块组成,分别是学生信息管理模块、课程信息管理模块、选课信息管理模块以及SQL复杂查询模块。
学生信息管理模块:主要实现快速的对学生信息表Student的查询、插入、删除、以及修改操作。
课程信息管理模块:主要实现快速的对课程信息表Course的查询、插入、删除、以及修改操作。
选课信息管理模块:主要实现快速的对选课信息表SC的查询、插入、删除、以及修改操作。
SQL复杂操作模块:主要实现通过输入SQL语句对多张表进行连接查询等操作。
3系统实现
3.1数据库的实现
(1)创建数据库
Create database Database;
(2)创建学生表:
Create table Student
(
Sno char(9)primary key,
Sname char(20),
Ssex char(2),
Sage smallint,
Sdept char(20)
);
(3)创建课程信息表:
Create table Course
(
Cno char(4)primary key,
Cname char(20),
Ccredit smallint
);
(4)创建选课信息表:
Create table SC
(
Sno char(9),
Cno char(4),
Grade smallint,
Primary key(Sno,Cno),
Foreign key(Sno)references Student(Sno),
Foreign key(Cno)references Course(Cno) )