最新数据库实验--学生宿舍管理系统设计大作业
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
一、需求分析…………………………………………………………
【信息需求】…………………………………………………………
【处理功能要求】……………………………………………………
【安全性和完整性要求】……………………………………………
【业务流程图】……………………………………………………….【数据字典】……………………………………………………….
二、概念设计………………………………………………………….【E-R图】…………………………………………………………….三.数据库实现……………………………………………………………【建立数据库、数据表、插入数据】……………………………….【数据库的建立】…………………………………………………….四、小结……………………………………………………………….
1. 系统需求分析阶段
1.1需求分析阶段
(1)信息要求:
系统要处理的对象包括宿舍楼基本信息、学生基本信息、宿舍基本信息、宿舍楼管理人员基本信息、外来人员登记基本信息等5个方面,各个对象包括信息如下所示(详细的数据见于数据字典):
1.宿舍楼基本信息:包括宿舍编号、每一幢宿舍楼号、楼管处的电话,这样可以方便管理者对宿舍楼的管理,提高查询效率;
2.学生基本信息:包括学号、学院、学生姓名、学生性别、原籍所在地、联系方式、学生出生日期、民族、学生所学专业、所在班级等方面的信息,可以方便学信息的查询和更新;
3.宿舍基本信息:包括宿舍号、可住人数、已住人数、学生专业、学生班级、学生学院。
4.宿舍管理人员基本信息:包括人员编号、人员姓名、性别、联系方式、出生年月、入职年月、管理楼号等数据项,可以方便管理人员对宿舍楼道工人的任用、信息查询及更改;
5.外来人员登记基本信息:包括(维修人员、学生工作人员、来访人员)的姓名、性别、登记时间、离开时间、原由、被访人员姓名。
(2)处理功能要求
系统主要完成一下几个功能:
1.宿舍楼基本信息查询与修改;
2.学生基本信息查询与更新;
3.每一幢宿舍楼中宿舍信息的查询与信息更新;
4.外来人员登记信息查询与修改;
5. 宿舍楼管理人员信息查询与修改;
(3)安全性和完整性要求
安全性先通过视图机制,不同的用户只能访问系统授权的视图,这样可提供系统数据一定程度上的安全性。
完整性要求用于描述宿舍楼基本信息、学生基本信息、宿舍基本信息、楼道管理人员基本信息、外来人员登记基本信息中数据项能否为null,以及一些用户自定义完整性(符
合实际要求),详细完整性要求见于系统的逻辑设计阶段。(4)学生宿舍管理系统业务流程图
(5)数字字典
数据项:
学生数据项
管理人员数据项
宿舍数据项
宿舍楼数字项
外来人员数据项
1.5.2数据结构
1.5.3数据流
1.5.4数据存储
1.5.5处理过程
3.数据库实施阶段
3.1建立数据库、数据表、视图、索引
1.建立数据库。
create database Student Dormitory management
2 建立数据表
/*建立学生信息表*/
CREATE Table Student
(StuNo Varchar(20) Not null Unique ,
StuName Varchar(20) Not null,
Stusex Varchar(20) Check(sex In ('man','woman')), Stuage Varchar(20) Not null,
Stuphone Varchar(20) Not null,
School Varchar(20) Not null,
Major Varchar(20) Not null,
Class Varchar(20) Not null,
StuATime Varchar(20) Not null,
primary key(StuNo,StuName)
);
/*建立公寓楼基本信息表*/
CREATE Table Dormitory
(DorNo varchar(10) not null primary key, DorSex varchar(10) not null,
DorMag varchar(50) not null,
DorTel varchar(20) not null,
DorNum varchar(20) not null,
DorMax varchar(200) not null
);
/*建立外来人员登记表*/
CREATE Table Live (StuNo varchar(8) not null primary key, StuName varchar(50) not null,
DorNo varchar(20) not null,
RNo varchar(60) not null,
InTime varchar(8) not null,
foreign key (StuNo) references Student(StuNo),
foreign key (DorNo) references Dormitory(DorNo)
);
/*建立楼栋工作人员基本信息表*/
CREATE Table Worker
( WorName Varchar(20) Not null,
WorNo Varchar(20) Not null,
WorSex Varchar(20) Not null,
WorPhNo Varchar(20) Not null,
WorType Varchar(20) Not null,
WorWage Varchar(20) Not null,
DorNo Varchar(20) Not null,
Primary key(WorNo),
Foreign key(DorNo) References Dormitory (DorNo),Check(WorSex In('man','woman'))
);
/*建立来访记录信息表*/
CREATE Table Visit
(
DorNo varchar(20) not null primary key,
RNo varchar(20) not null,
InName varchar(20) not null,
StuName varchar(20) not null,
CTime varchar(20) not null,
GTime varchar(20) not null,
Foreign key(DorNo) References Dormitory (DorNo)
);