学生宿舍数据库管理系统_第1页
学生宿舍数据库管理系统_第2页
学生宿舍数据库管理系统_第3页
学生宿舍数据库管理系统_第4页
学生宿舍数据库管理系统_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课程项目考核报告课程名称: 数据库原理与应用 项目名称: 宿舍管理系统 _宿舍管理系统分析与设计1 项目背景: 信息要求学生宿舍管理系统对于一个学校来说是必不可少的组成部分。目前好多学校还停留在宿舍管理人员手工记录数据的最初阶段,手工记录对于规模小的学校来说还勉强可以接受,但对于学生量比较庞大,需要记录存档的数据比较多的高校来说,人工记录是相当麻烦的。我针对此情况,设计了合适的学生宿舍管理系统,可以方便学生宿舍的管理,提高宿舍管理工作效率及查询效率。2 系统功能结构根据宿舍馆管理系统的特点,可以将其分为系统管理、系统查询两个部分,其中各部分及其包括的具体功能如图1所示。宿舍管理系统系统管理系统

2、查询学生管理宿舍管理宿楼管理员工管理信息查询管理查询3 数据库设计(1) 概念结构设计概念结构设计阶段是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。设计学生宿舍管理数据库,包括学生、宿舍、宿舍楼、职工四个关系。其E-R图如下:学生班级学号hao号性别姓名宿舍号床铺号 移动电话宿舍宿舍号宿舍楼号宿舍电话应住人数住宿 N 1包含 N 1管理职工宿舍楼宿舍数宿舍楼号楼层数职工号宿舍类别 1 1职工号 职工姓名性别宿舍楼号设计宿舍管理数据库,包括职工、宿舍楼、宿舍、学生四个关系, 其关系模式中对每个实体定义的属性如下:职工表Employee:(职工

3、号,职工姓名,性别,宿舍楼号)宿舍楼表House:(宿舍楼号,宿舍类别,职工号,楼层数,宿舍数)宿舍表Dorm:(宿舍号,宿舍楼号,宿舍电话,应住人数)学生表Student:(学号,姓名,性别,班级,移动电话,宿舍号,床铺号)职工表(Employee)字段名字段含义数据类型长度备注Emp_Id职工号char10唯一,且不可为空Emp_Name职工姓名char10Emp_Sex性别char2Hou_Id宿舍楼号char10字段名字段含义数据类型长度备注Hou_Id宿舍楼号char10唯一,且不可为空Hou_type宿舍类别char2Emp_Id 职工号char10Hou_floor楼层数char

4、10Hou_Num宿舍数char10宿舍楼表(House)宿舍表(Dorm)字段名字段含义数据类型长度备注Dor_Id宿舍号char10唯一,且不可为空Hou_Id宿舍楼号char10Dor_Tel宿舍电话char10Dor_Num 应住人数char101、 学生表(Student)字段名字段含义数据类型长度备注Stu_Id学号char10唯一,且不可为空Stu_Name姓名char10Stu_Sex性别char2Stu_class班级char10Stu_Tel移动电话varchar15Dor_Id宿舍号char10Stu_Bed床铺号char101、创建数据库DMS: Create data

5、base DMS2、创建数据表:职工表Employee(Emp_Id, Emp_Name, Emp_Sex, Hou_Id)create table Employee(Emp_Id char(10) not null unique,Emp_Name char(10) not null,Emp_Sex char(2) not null,Hou_Id char(10) not null,primary key(Emp_Id)宿舍楼表House(Hou_Id, Hou_type, Emp_Id,Hou_floor, Hou_Num)create table House(Hou_Id char(10)

6、not null unique,Hou_type char(2) not null,Emp_Id char(10) not null,Hou_floor char(10) not null,Hou_Num char(10) not null,primary key(Hou_Id),check(Hou_Id0 and Hou_Id100)宿舍表Dorm(Dor_Id, Hou_Id, Dor_Tel, Dor_Num)的建表语句:create table Dorm(Dor_Id char(10)not null unique,Hou_Id char(10) not null,Dor_Tel ch

7、ar(10)not null,Dor_Num char(10) not null,primary key(Dor_Id)学生表Student(Stu_Id, Stu_Name, Stu_Sex, Stu_Class, Stu_Tel,Dor_Id,Stu_Bed)的建表语句:create table Student(Stu_Id char(10) not null unique,Stu_Name char(10) not null,Stu_Sex char(2) not null,Stu_Class char(10) not null,Stu_Tel varchar(15)not null,D

8、or_ID char(10) not null,Dor_Bed char(10)not null,primary key(Stu_Id)(1) 视图设计(至少一个视图)SELECT dbo.Dorm.Dor_Id, dbo.Dorm.Hou_Id, dbo.Student.Stu_Id, dbo.Student.Stu_Name, dbo.Student.Stu_Class, dbo.Student.Dor_ID AS Expr1FROM dbo.Dorm INNER JOIN(2) 约束默认规则设计要求:至少完成一个Check约束条件、一个默认对象和一个外健约束外键约束定义:建立Employ

9、ee表和House表之间的参照关系,如图5所示外键约束定义:建立House表和Dorm表之间的参照关系外键约束定义:建立Dorm表和Student表之间的参照关系(3) 存储过程设计(至少一个带输入参数的存储过程)存储过程功能:用CREATE PROCEDURE语句创建存储过程getStudent,要求根据stu_id(学生学号)返回学生的stu_name(学生姓名)和stu_class(学生班级)。创建存储过程 Use DMS GOCreate Procedure getStudentstu_id char(10),stu_name char(10) OUTPUT,stu_class cha

10、r(10) OUTPUTAsSelect stu_name=stu_name, stu_class=stu_classFrom studentWhere stu_id=stu_idGO执行存储过程执行已创建的存储过程要使用T-SQL的execute语句Use DMSGODeclare stu_name char(10),stu_class char(10)Execute getstudent 610110101, stu_name OUTPUT, stu_class OUTPUTPrint 学号610110101学生的姓名为:+stu_namePrint 学号610110101学生的班级为:+

11、stu_classGO触发器设计触发器功能:使用T-SQL的CREATE TRIGGER语句在DMS数据库的student表上创建一个更新触发器student_update,当在student表中更新读者姓名时,激活该触发器,显示被更改读者的姓名变更信息。Use DMSGoCreate trigger student_updateOn studentfor updateAsIf update(stu_name)Begin Declare new_stuname char(10), old_stuname char(10) Declare msg char(60)Select new_stuna

12、me=new_stuname from insertedSelect old_stuname=old_stuname from insertedRaiserror(student_update触发器开始执行,16,1)Set msg=本表中学生+old_stuname+被更名为+new_stuname+!Raiserror(msg,16,2)End Go在查询分析器中输入修改记录的update语句验证触发器的运行,如下图所示,由于查询分析口头窗口下半部分的“消息”标签中显示的信息可知,update语句确实激活了student_updateUpdate student set stu_name=钟浩where stu_name=钟强6)多表(复杂)查询语句设计查询语句功能:查询所有宿舍号为01开头的学生姓名和所在的宿舍楼号。查询语句定义,如图8所示:USE DMSSELECT student.stu_name,hou_idFROM student,dormWHERE student.dor_id IN (SELE

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论