完整版学生公寓管理数据库设计.docx
《完整版学生公寓管理数据库设计.docx》由会员分享,可在线阅读,更多相关《完整版学生公寓管理数据库设计.docx(9页珍藏版)》请在冰豆网上搜索。
完整版学生公寓管理数据库设计
学院:
专业:
班级:
学号:
姓名:
计算机科学与技术
计算机应用
531
1•需求分析
学生公寓管理系统是为学校方便快捷地管理学生住宿情况而设计的,主要用户是学校学生管理者,如辅导员、学院领导、后勤管理处。
当辅导员需要查询某位学生的宿舍或者要查询某位学生的同宿舍室友,学院院长想知道本学院的学生住在那些宿舍楼,某位宿舍楼管理员想知道自己管理的宿舍楼居住的是那些学院的学生,用本系统就能方便快捷地进行自己想要进行的查询,比起查纸质档案节约了不少的时间与精力,且不会受地域与时间限制。
2.系统的功能分析
本系统的功能主要为两部分
(一)系统管理员:
后勤管理处作为系统的管理员可以对学生的数据进行各种操作,当某学生搬宿舍后对他的居住宿舍号等数据进行更改,当某同学申请校外居住时就删除他的住宿信息,新生入学时就需要及时增加住宿信息。
(二)普通查询者:
辅导员、学院管理者对于系统的权限仅仅是查询,而没有对数据进行增删改的权限。
所以查询者只能查询自己需要查询的信息,如查询学生的宿舍号、同宿舍室友、所住宿舍楼管理员的联系方式等信息。
3.数据流图
数据流图主要反映学生公寓管理系统的数据流程和简单的数据处理、加工过程和方法。
4.数据字典
1部分数据项如下所示:
数据项名:
姓名
数据类型:
字符型
数据长度:
20位
数据项名:
学号
数据类型:
整型数据长度:
10位
数据项名:
宿舍号数据类型:
整型数据长度:
4位数据项名:
班级号数据类型:
整型数据长度:
7位
2部分数据结构如下所示:
数据结构名:
living
含义说明:
入住公寓的学生入住时填写的信息组成:
学号、姓名、班级、宿舍号
数据结构名:
dormitory
含义说明:
学生说入住的宿舍
组成:
宿舍号、学生学号、所属宿舍楼号、容纳人数
数据结构名:
S_message
含义说明:
学生的基本信息
组成:
学号、姓名、班级、学院、联系电话
3部分数据流如下所示:
数据流名:
信息管理与维护
信息
宿舍号、楼栋号、
说明:
系统管理员对学生的数据进行改正或录入学生入住时的数据去向:
学生信息表
数据组成:
学号、姓名、班级、学院、联系电话、家庭住址、辅导员电话
数据流名:
查询
说明:
查询者通过系统查询自己需要查询的数据数据来源:
学生信息表
5.概念结构设计
(1)学生信息实体局部E-R模型设计
(2)宿舍实体局部E-R模型设计
(3)入住信息实体局部E-R模型设计
(4)班级实体局部E_R图模型设计
(5)teacher实体局部E_R模型设计
(6)管理员实体局部E_R模型设计
(7)整体E-R模型设计
6.逻辑结构设计
①关系模型设计
完整的概念模型
(r_I?
Cjiars:
7et=4
(LTelLa-3EK
=_IE
L3L:
xclus
:
=lltE=
T-l
■"M'Im-
lEiz»r»r
C^.arac:
^rs
U16E&T
CiLalad^rj
L.:
=Jm二
In"*=ar
連
2:
Iiin:
iricr_ipi■■
_ZELi:
帕虻:
:
Q
E_IDIn:
骂詔
ran羸誘?
■話
!
i€rti*zer_l
(1)学生信息(学号,姓名,班级,学院,联系电话,家庭住址)
(2)宿舍(宿舍号,学号,所属楼栋,所属楼栋号)
(3)入住(学号,姓名,宿舍号,入住时间)
(4)班级(班级号,辅导员号)
(5)辅导员(辅导员号,辅导员姓名,辅导员联系电话)
(6)管理员(管理楼栋号,管理员号,管理员姓名,管理员联系电话)
7•数据库表结构的设计
得出数据库的各种关系模型后,需要根据需求分析阶段的数据字典的数据项描述,给出各数据库结构。
通过对以下定义的几张表进行操作可完成系统设计的各项功能,表之间有着不同程度的联系。
(1)Student(学生信息表)
学生信息表用于保存学生入校时的信息
X
怂
允许空值t
SJD
irrt
10
0
□打
S_name
varchar
4
0
口
clus
irrt
7
0
n1
匚ollege
varchar
20
Q
□
S,Tel
int
11
0
卜addr^s
vArchar
40
0
□
(2)dormitory(宿舍信息表)
宿舍信息表用于保存学生所住宿舍的基本信息
删
趣
dormitoryJD
int
11
0
□釦
SJD
int
10
0
□
int
11
0
num
ini
11
0
□
(3)Living(入住信息表)
入住信息表用于保存学生新入住宿舍时填写的信息
换点允许空值(
SJD
integer
□於1
S_name
varthar
4
□
dormitory」D
Enfeger
□1
**tim&
dat^
□||
(4)Class(班级表)
班级表用于保存学生所在班级的基本信息
打徹点允许空追(
flaws
integer
0炉
>T_IE>
inieger
(5)Teacher(辅导员表)
辅导员表用于保存学生的辅导员的基本信息
名
TJD
tnteger
0.>1
T_n^me
varchar
4
□
IT.Tel
integer
11
□
(6)G(管理员表)
管理员表用于保存学生所住宿舍楼栋管理员的基本信息
|a
允
dormitory_ID
integer
®屛i
G_ID
mteger
□
G_name
varthiir
4
□
*G_Tel
integer
8.sql语句创建表
(1)Student(学生信息表)
CREATETABLE'NewTable'('S_ID'integer(10)NOTNULL,
'S-name'varchar(4)NOTNULL,'class'integerNOTNULL,
'college'varchar(20)NOTNULL,
'S_Tel'integer(11)NULL,
'address'varchar(40)NOTNULL,
PRIMARYKEY('S_ID')
)
(2)dormitory(宿舍信息表)
CREATETABLE'NewTable'('dormitory_ID'integerNOTNULL,
'S_ID'integer(10)NOTNULL,'Building'integerNULL,
'num'integerNOTNULL,PRIMARYKEY('dormitory_ID'))
(3)Living(入住信息表)
CREATETABLE'NewTable'('S_ID'integer(10)NOTNULL,'S-name'varchar(4)NOTNULL,'dormitory_ID'integerNOTNULL,
'time'dateNOTNULL,
PRIMARYKEY('S_ID')
)
(4)Class(班级表)
CREATETABLE'NewTable'(
'class'integerNOTNULL,'T_ID'integerNOTNULL,PRIMARYKEY('class')
)
(5)Teacher(辅导员表)
CREATETABLE'NewTable'('T_ID'integerNOTNULL,'T_name'varchar(4)NOTNULL,'T_Tel'integer(11)NOTNULL,PRIMARYKEY('T_ID')
)
(6)G(管理员表)
CREATETABLE'NewTable'('dormitory」D'integerNOTNULL,'G_ID'integerNOTNULL,
'G_name'varchar(4)NOTNULL,'G_Tel'integer(11)NOTNULL,PRIMARYKEY('dormitory」D'))