数据库课程设计学院学生管理信息系统.docx
- 文档编号:3053869
- 上传时间:2022-11-17
- 格式:DOCX
- 页数:22
- 大小:928.10KB
数据库课程设计学院学生管理信息系统.docx
《数据库课程设计学院学生管理信息系统.docx》由会员分享,可在线阅读,更多相关《数据库课程设计学院学生管理信息系统.docx(22页珍藏版)》请在冰豆网上搜索。
数据库课程设计学院学生管理信息系统
数据库课程设计(学院学生管理信息系统)
2009—2010学年第二学期
《网络数据库》
课程设计说明书
题目:
学院学生管理信息系统
2010
年
7
月
2
日
摘要
本文简要介绍了用SQL创建《学院学生管理信息系统》数据库的过程。
针对每年新生入校和毕业生离校的情况,为了及时掌握在院学生情况,特建立此数据库。
为了提高编程能力,建库者采用编写代码的形式实现创建过程。
创建全程分为系统需求分析、数据库系统概念设计、数据库系统逻辑结构设计、数据库系统实施等阶段。
本文围绕创建过程展开。
经过对《学院学生管理信息系统》需求的分析,建库者进行了数据库概念结构设计,绘制E-R图。
按转换的原则,将概念模型转换为关系模型,并根据实际情况给实体各属性赋予恰当的数据类型和长度,实现数据库的逻辑结构设计。
运用代码创建“学院学生管理信息系统”数据库,college、class、team、dorm、student五个基本表,并通过外键建立好表间联系。
为每个表创建好存储过程后,利用存储过程对表中数据进行添加、修改、删除、等操作。
因student表数据量大,所以为其建立索引。
在假设某种查看数据需求的情况下,建立条件查询、多表查询。
因为本系统针对学生管理,为使输入简化,特对student表中“性别”属性建立默认值,并进行检测。
为维护系统正常运行,减低数据丢失的几率,建库者为系统指定了作业计划及备份。
为方便用户查询数据及保证数据库数据的安全性,定义了用户和权限并设置不同的使用权限。
本系统基本能反映学生信息,可作为SQL入门实例。
关键词:
SQLSQL建库实例SQL代码数据库数据库设计概念结构逻辑结构视图索引查询默认备份用户角色
第一章系统概述
本次课程设计我建立的数据库是《学院学生管理信息系统》。
该系统是一个综合的管理信息系统。
围绕学生,系统涵盖了学生隶属的班级概况,班级所属的学院信息,学生所参加运动队的概况及学生住宿状况等。
该系统的设计能够满足对学院、班级、学生、运动队、宿舍等信息的查询以及修改。
该系统性能的完好性将影响学生信息管理。
第二章系统需求分析
一个学院根据专业及需要开设多个班级,一个班级只能隶属于一个学院,所以学院与班级是1:
n的关系。
学院属性有学院编号、学院名称;班级属性包括班级号、班级名、专业、教室。
每一个班级有多名学生,每名学生必须且只能属于一个班级,则班级与学生对应的关系为1:
n。
设学生属性有学号、姓名、性别、年龄。
每一个学院有若干运动队,一个运动队只能效力于一个学院,故学院与运动队的关系为1:
n。
参加运动队的同学在运动队里有参加项目。
运动队属性有运动队号、队名、教练员、活动地点、活动时间。
一个宿舍可以有多名学生,但是一个学生只能住在一个宿舍里,宿舍属性有宿舍号、楼号、人数、管理员。
第三章数据库系统概念设计
本系统首先自顶向下进行需求分析,再自底向上设计概念结构,先定义各局部应用的概念结构,然后按一定的规则将他们集合起来得到全局概念。
根据以上系统需求分析,绘制E—R图如下:
学院
运动队
班级
学生
学院编号
学院名称
拥有
隶属
包括
参加
住宿
活动时间
活动地点
队号
队名
教练员
宿舍
学号
年龄
性别
姓名
教室
专业
班级名
人数
楼号
宿舍号
管理员
1
n
1
n
1
1
n
n
1
n
参加项目
班级号
图3-1学院学生信息管理系统E-R图
第四章数据库系统逻辑结构设计
按转换原则将图3-1的学院学生管理信息系统E-R视图转化成拥有主键(下有下划线)和外键(下有波浪线)的关系模型。
学院(学院编号,学院名称)
班级(班级号,班级名,专业,教室,学院编号)
运动队(队号,队名,教练员,活动时间,活动地点,学院编号)
宿舍(宿舍号,楼号,人数,管理员)
学生(学号,姓名,性别,年龄,班级号,队号,宿舍号,参加项目)
第五章表结构设计
表5-1学院表(College)表结构
列名
说明
数据类型
数据长度
约束
college_num
学院编号
char
5
主键
College_name
学院名称
char
20
非空
表5-2班级表(class)表结构
列名
说明
数据类型
数据长度
约束
Class_num
班级号
Char
5
主键
Class_name
班级名称
char
20
非空
major
专业
Char
20
classroom
教室
Char
8
College_num
学院编号
char
5
外键,引用College表的college_num
表5-3运动队表(team)表结构
列名
说明
数据类型
数据长度
约束
Team_num
队号
char
5
主键
Team_name
队名
char
8
非空
Coach
教练
char
8
Place
活动地点
char
10
Sporttime
活动时间
datetime
College_num
学院编号
char
5
外键,引用College表
的college_num
表5-4宿舍表(Course)表结构
列名
说明
数据类型
数据长度
约束
dorm_num
宿舍号
char
3
主键
Building_num
楼号
char
4
Total_member
人数
char
2
adm
管理员
char
80
表5-5学生表(student)表结构
列名
说明
数据类型
数据长度
约束
Stu_num
学号
char
10
主键
stu_name
姓名
char
8
非空
gender
性别
char
2
默认“男”,限“男”或“女”
Age
年龄
smallint
默认为21
Class_num
班级号
5
非空,外键,引用class表
Class-num
Team_num
队号
char
5
外键,引用team表team_num
Dorm_num
宿舍号
char
3
外键,引用dorm表dorm_num
pro
参加项目
char
10
第六章创建数据库和表
6.1数据库的创建
使用查询分析器建库,代码如下:
createdatabase学院学生管理信息系统
直接在“对象资源管理器”的“数据库”上右击选择“新建数据库”建库。
本文采用第二种方法。
6.2表的创建
调用查询分析器,用代码创建表,编写代码过程如图5-1,代码如下:
createtablecollege(college_numchar(5)primarykey,
college_namechar(20)notnull);
createtableclass(class_numchar(5)primarykey,
class_namechar(20)notnull,
majorchar(20),
classroomchar(8),
college_numchar(5)referencescollege(college_num));
createtableteam(team_numchar(5)primarykey,
team_namechar(8)notnull,
coachchar(8),
placechar(10),
sporttimedatetime,
college_numchar(5)referencescollege(college_num));
createtabledorm(dorm_numchar(3)primarykey,
building_numchar(4),
total_memberchar
(2),
admchar(8));
createtablestudent(stu_numchar(10)primarykey,
stu_namechar(8)notnull,
genderchar
(2)check(genderin('男','女')),
agesmallintdefault21,
class_numchar(5)notnull,referencesclass(class_num),
team_numchar(5)referencesteam(team_num),
dorm_numchar(3)referencesdorm(dorm_num),
prochar(10));
图6-1表结构的创建
6.3关系图的创建
在“对象资源管理器”中“学院学生管理信息系统”数据库右击“关系”新建关系图。
关系图如图5-2所示。
图6-2表间关系图
第七章创建存储过程并输入数据
7.1通过存储过程并向表中添加数据
打开数据库0701410103,在“存储过程”上右击,选择“新建存储过程”,然后输入代码。
7.2表college
创建存储过程,代码如下
CREATEPROCEDUREadd_college@college_numchar(5),@college_namechar(20)
ASinsertintocollege(college_num,college_name)
values(@college_num,@college_name)
运用exec语句向表中输入数据,过程如图7-1所示,表内容如图7-2所示。
图7-1运用exec语句向college表输入数据
图7-2表college内容
7.3表class
创建存储过程,过程如图7-3所示,代码如下:
CREATEPROCEDUREadd_class@class_numchar(5),@class_name
char(20),@majorchar(20),@classroomchar(8),@college_numchar(5)
AS
Insertintoclass(class_num,class_name,major,classroom,college_num)
values(@class_num,@class_name,@major,@classroom,@college_num)
图7-3创建表class存储过程
运用exec语句向表中输入数据,过程如图7-4所示,表内容如图7-5所示。
图7-4运用exec语句向表class输入数据
图7-5class表内容
7.4表team
创建存储过程,代码如下:
CREATEPROCEDUREadd_team@team_numchar(5),@team_namechar(8),@coachchar(8),@placechar(10),@sporttimedatetime,@college_numchar(5)
ASInsertintoteam(team_num,team_name,coach,place,sporttime,college_num)
values(@team_num,@team_name,@coach,@pl
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 课程设计 学院学生 管理信息系统