(数据库课程设计)学生宿舍管理系统毕业设计论文(4)
资料介绍:
foreign key(StuNo) references Student(StuNo),
foreign key(RNo) references Room(RNo),
check(FDFitNum >= 0));
(9)宿舍损坏配备物品赔偿基本信息表的建立:
create table FitmentCompensate(
FitName char(16) not null,
StuNo char(9) not null,
FCPrin char(15) not null,
FCompDate Datetime not null,
FCompNum int not null,
foreign key(FitName) references Fitment(FitName),
foreign key(StuNo) references Student(StuNo),
foreign key(FCPrin) references SafeGuard(SGName),
check(FCompNum >= 0));
(10)宿舍事故注册基本信息表的建立:
create table Accident(
AcNo int not null unique,
AcType char(10) not null,
[资料来源:https://www.doc163.com]
StuNo char(9) not null,
AcDate datetime not null,
AcArtical char(30) not null,
AcVerify bool null,
SGName char(15) not null,
AcArNum int not null,
AcStuPh char(12) not null,
primary key(AcNo,AcDate),
foreign key(StuNo) references Student(StuNo),
foreign key(SGName) references SafeGuard(SGName),
check(AcArNum > 0),);
(11)宿舍事故调查基本信息表的建立:
create table AccidentResearch(
AcNo int not null,
ARName char(15) not null,
SGName char(15) not null,
ARResult bool not null,
primary key(SGName), [来源:http://www.doc163.com]
foreign key(AcNo) references Accident(AcNo),
foreign key(SGName) references SafeGuard(SGName),);
(12)宿舍事故赔偿基本信息表的建立:
create table AccidentCopensate(
AcNo int not null,
ACStu char(9) not null,
AcArtical char(30) not null,
AcDate Datetime not null,
SGName char(15) not null,
foreign key(AcNo) references Accident(AcNo),
foreign key(ACStu) references Student(StuNo),
foreign key(SGName) references SafeGuard(SGName));
5.1.3 建立视图
(1)用于查询和更新楼道工人基本信息的视图定义如下:
create view WorView(编号,姓名,工作类型,工资,性别,联系方式,
工作时间,宿舍楼编号,校区,区位)
as
[资料来源:http://Doc163.com]
select *
from Worker
with check option;
(2)方便于宿舍楼基本信息查询、更新的视图定义如下:
create view DormView (宿舍楼编号,校区,区位,楼管处电话,楼管)
as
select *
from dormitory
with check option;
(3)显示宿舍基本信息的视图定义如下:
create view RoomView (宿舍编号,舍长,年级,学院,专业,宿舍楼编号,
校区,区位)
as
select *
from Room
with check option;
(4)可用于宿舍楼配备物品基本信息查询、更新的视图定义如下:
create view FitView (物品名,价格,数量,宿舍楼编号, 校区,区位)
as
[资料来源:www.doc163.com]
select *
from Fitment
with check option;
(5)用于查询和更新学生基本信息的视图定义如下:
create view StuView (学号,学院,姓名,性别,祖籍,出生日期,入学时间,
专业,班级,宿舍编号, 宿舍楼编号,校区,区位)
as
select *
from Student
with check option;
(6)显示宿舍保卫处基本信息的视图定义如下:
create view SGView (名称,人员数目,负责人,电话)
as
select *
from SafeGuard
with check option;
(7)以便于物品出入管理和出入物品信息查询、更新的视图定义如下:
create view ArIOView (学号,出入物品,负责人,日期,序号,宿舍楼编号, [资料来源:http://doc163.com]
校区,区位)
as
select *
from ArticalInOut
with check option;
(8)便于宿舍配备物品损坏登记及损坏宿舍物品查询的视图定义如下:
create view FDView (物品名,学号,宿舍号,损坏数量,宿舍楼编号,校区,
区位)
as
select *
from FitmentDestruction
with check option;
(9)用于查询损坏物品赔偿基本信息 ,便于宿舍物品管理的视图定义如下:
create view FCView (物品名,学号,负责人,日期,赔偿数量)
as
select *
from FitmentCompensate
with check option;
(10)方便学生事故的注册及保卫人员对事故注册查询的视图定义如下: [来源:http://Doc163.com]
create view AccView (编号,事故类型,学号,日期,损失物品,属实,
负责单位,损失数量,学生联系方式)
as
select *
from Accident
with check option;
(11)便于宿舍以外事故调查的视图定义如下:
create view ARView (编号,调查名称,负责单位,调查结果)
as
select *
from AccidentResearch
with check option;
(12)方便宿舍事故赔偿信息查询和更改的视图定义如下:
create view ACView (编号,学号,赔偿物品,日期,负责单位)
as
select *
from AccidentCompensate
with check option;
5.1.4 建立索引
create unique index StudentNo on Student(StuNo);
[资料来源:https://www.doc163.com]
create unique index RoomNo on Room(RNo);
create unique index DormitoryNo_Campus_Location
on Dormitory(DorNo desc,DorCampus,DorLocation);
create cluster index StudentName on Student(StuName);
create unique index FitmentName on Fitment(FitName);
create unique index SafeGuardName on SafeGuard(SGName);
5.2数据入库
系统包括宿舍学生基本信息管理、楼道工人基本信息管理、宿舍楼基本信息管理、宿舍基本信息管理、宿舍事故基本信息管理、宿舍楼物品出入基本信息管理、宿舍楼保卫处基本信息管理、宿舍配备物品及处理管理等八大功能模块,共有12张基本表,牵涉到大量数据的录入,又由于时间限制,采用事先在Excel中录入数据,然后使用SQL Server 2000数据导入/导出向导功能,直接将数据导入到相应的基本表中。当然,附录中也给出了各个基本表插入元组的存储功能,详细内容请参阅附录2。
5.3创建各个功能的存储过程
系统共创建了16个存储过程,具体列表如下:
表3.1 创建的存储过程列表:
编号 存储过程名称 定义 作用 [资料来源:www.doc163.com]
P-1 p1_Worker_Insert 详见附录2-1 在Worker中插入一元组
P-2 p2_Dormitory_Insert 详见附录2-2 在Dormitory中插入一元组
P-3 p3_Room_Insert 详见附录2-3 在Room中插入一元组
P-4 p4_Fitment_Inser 详见附录2-4 在Fitment中插入一元组
P-5 p5_Student_Insert 详见附录2-5 在Student中插入一元组
P-6 p6_SafeGuard_Insert 详见附录2-6 在SafeGuard中插入一元组
P-7 p7_Artical_In_Out_Insert 详见附录2-7 在ArticalInOut中插入一元组
P-8 p8_FitmentDestruction_Insert 详见附录2-8 在FitmentDestruction中插入一元组
P-9 p9_FitmentCompensate 详见附录2-9 在FitmentCompensate中插入一元组
P-10 p10_Accident_Insert 详见附录2-10 在Accident中插入一元组
P-11 p11_AccidentResearch_Insert 详见附录2-11 在AccidentResearch中插入一元组
P-12 p12_AccidentCompensate_Insert 详见附录2-12 在AccidentCompensate中插入一元组 [资料来源:http://doc163.com]
P-13 p13_Query_Worker 详见附录2-13 在Worker中匹配(WorNo)查询
P-14 p14_Query_Worker 详见附录2-14 在Worker中匹配(WorName)查询
P-15 p15_Delete_Worker 详见附录2-15 在Worker中删除元组
P-16 p16_Update_Worker 详见附录2-16 在Worker中更新操作
(其他表的查询、修改、删除与Worker表的大致相同,这里不再具体列出)
6.系统调试和测试
学生宿舍管理系统的测试主要采用黑盒测试和白盒测试的方法,具体的说黑盒测试主要采用以下两种测试方法:
1. 已知系统的功能设计规格,进行测试证明每个实现了的功能是否符合要求;
2. 已知系统的内部工作过程,通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否通过检验。
该学生管理系统主要采用黑盒测试的第一种测试方法,具体的测试如下: