数据库课程设计报告
课题名称:
专业:
班级:
姓名:
学号:
指导老师:
课题
名称
设计
目的
实验
环境
任务
要求
设计任务书
学生选课系统
本课程设计的目的是通过独立完成一个数据库开发项目,让学生知道数
据库开发的基本过程,并运用所学知识去独立思考和设计一个数据库。最终
达到提高运用所学知识解决实际问题的能力。
1、Windows XP
2、SQL Server
任务:
分析设计学生选课系统,选择适当的开发工具作出功能完整、切实可用
的系统。
要求:
1、需求分析;
2、数据库的概念设计;
3、数据库的逻辑设计;
4、数据库的物理设计;
5、应用程序设计;
6、编程实现。
目 录
1 需求分析................................................................................................................. 1
1.1 系统目标....................................................................................................... 1
1.2 系统功能需求............................................................................................... 1
2 数据库概念设计..................................................................................................... 1
2.1 系统概念模型............................................................................................... 1
3 将概念模型转换为关系模型................................................................................. 2
3.1 将 E-R 模型转换为关系模型.......................................................................2
3.2 数据库结构设计........................................................................................... 3
3.3 实现数据完整性........................................................................................... 4
4 应用程序设计......................................................................................................... 4
4.1 学生选课系统处理流程图........................................................................... 4
4.2 总体结构和外部结构设计........................................................................... 4
5 编程实现................................................................................................................. 5
5.1 Login.aspx..................................................................................................... 5
5.2 Student.aspx...................................................................................................5
5.3 Teacher.aspx...................................................................................................6
5.4
guanliyuan.aspx............................................................................................. 6
5.5 Acourse.aspx..................................................................................................7
5.6 Ateacher.aspx.................................................................................................7
5.7 Astudent.aspx.................................................................................................7
5.8 Password.aspx.................................................................. 错误!未定义书签。
总 结........................................................................................................................... 8
致 谢........................................................................................................................... 8
参考文献..................................................................................... 错误!未定义书签。
数据库课程设计—学生选课系统
1
1 需求分析
1.1 系统目标
实现一个学生选课系统,完成学生选课及查询、教师查询选课、管理员管理
选课等功能。
1.2 系统功能需求
本系统的用户分为普通用户和管理员两类,普通用户包括教师和学生两种。
管理员。普通用户即选课学生则只具有为自己选课的权限。
1.2.1 功能划分
学生选课系统,在登录模块之后,根据系统用户的不同划分为四个模块:管
理员模块、学生模块、教师模块。
1.2.2 功能描述
(1)登录模块
登录模块用于用户登录,完成基本的验证。根据所填信息进行判断,用户名
错误进行用户名错误提示,密码错误进行密码错误提示。
(2)管理员模块
管理员模块用于对系统进行管理,对学生信息进行修改、添加、删除。对教
师信息进行添加、修改、删除。
(3)学生模块
学生登录后在此模块进行选课、查看选课信息。
(4)教师模块
教师登录后,点击相关课程,进行查看该课程选课情况。
2 数据库概念设计
2.1 系统概念模型
数据库课程设计—学生选课系统
2
学号
姓名
班级
选修课程
学生
教师
教师号
姓名
系院
管理学生信息
管理教师信息
管理员
账号 密码
图 2-1 学生选课系统概念模型 E/R 图
上图是学生选课系统概念模型 E/R 图,该系统所涉及的实体集有:
学生实体集:具有属性学号、姓名、班级。
教师实体集:具有属性教师号、姓名、班级。
管理员实体集:具有属性账号、密码。
一个学生可以选修多门课程,一个教师可以开设多门课程。所以学生和教师
之间是 M:N 的联系。
一个管理员可以管理多个学生信息。所以管理员和学生之间是 1:N 的联系。
多个管理员可以管理多个教师信息。所以管理员和教师之间是 M:N 的联系。
3 将概念模型转换为关系模型
3.1 将 E-R 模型转换为关系模型
学生实体集可转换为关系:
Student(SNo,SPass,SName,SClass)
SNo 表示学号,SPass 表示密码,SName 表示学生姓名,SClass 表示学生所
在班级。
教师实体集可转换为关系:
Teacher(TNo,TPass,TName,TCollege)
TNo 表示教师号,TPass 表示密码,TName 表示教师姓名,TCollege 表示教
师所在院系。
管理员实体集可转换为关系:
数据库课程设计—学生选课系统
3
AUser(UName,UPass)
UName 表示管理员号,UPass 表示密码。
教师与课程之间可转换为关系:
Course(CName,CTNo,CInfo)
CName 表示课程名称,CTNo 表示授课教师教师号,CInfo 表示课程相关信息。
学生和课程之间可转换为关系:
Elect(SNo,CName)
SNo 表示学生学号,CName 表示说选课程名称。
3.2 数据库结构设计
把关系模型转化为表结构:
学生信息表(Student):包含学生信息,定义如下:
表 3-1 学生信息表
含义
域名
SNo
SPass
SName
SClass
教师信息表(Teacher):包含教师信息,定义如下:
数据类型
Char(12)
Char(12)
Char(8)
Char(20)
学号
密码
姓名
班级
例子
备注
2010000301111 主键
123456
李守雨
软件 1003
表 3-2 教师信息表
含义
域名
TNo
TPass
TName
TCollege
管理员信息表(AUser):包含管理员信息,定义如下:
数据类型
Char(12)
Char(12)
Char(8)
Char(20)
教师号
密码
姓名
院系
例子
备注
2010000201111 主键
123456
里昂
软件工程
表 3-3 管理员信息表
含义
域名
UName
UPass
课程信息表(Course):包含课程信息,定义如下:
数据类型
Char(12)
Char(12)
账号
密码
例子
Admin
123456
备注
主键
表 3-4 课程信息表
域名
CName
CTNo
含义
课程名称
教师号
数据类型
Char(20)
Char(12)
例子
软件网络
201000101111
备注
主键
数据库课程设计—学生选课系统
4
CInfo
选课信息表(Elect):包含选课信息,定义如下:
Char (500)
课程信息
软件介绍
允许空
含义
域名
SNo
CName
3.3 实现数据完整性
学号
课程名称
表 3-5 选课信息表
数据类型
Char(12)
Char (20)
例子
201000201111
软件介绍
备注
外键
外键
通过各种约束,缺省,规则和触发器实现数据的完整性。学生选课信息的重
要性,和各个数据之间的相关性,保证数据的完整性就更为重要。
(1)各种外键约束保证数据的完整性,不能随意删除。外键的设置在上面
数据库建表时已经提到。
(2)主键约束保证实体的完整性,主键的设置在上面数据库建表时也已经
设置。
4 应用程序设计
4.1 学生选课系统处理流程图
开始
用户登录
N
合法?
Y
用户选择服务
执行服务?
Y
N
执行服务操作
退出
图 4-1 学生选课系统处理流程图
4.2 总体结构和外部结构设计
数据库课程设计—学生选课系统
5
学
生
选
课
模
块
登录模块
教
师
查
看
选
课
模
块
管
理
员
模
块
图 4-2 总体结构图
5 编程实现
5.1 Login.aspx
这是用户登录界面,在下拉列表中选择学生进入 Student.aspx,选择教师进
图 5-1 登陆界面
入 Teacher.aspx,选择管理员进入 guanliyuan.aspx。
5.2 Student.aspx