学校管理数据库系统

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实训报告

一.实训任务

本试训的任务是“学校管理数据库系统”的设计与实现,本系统是为了方便学校管理而设计的,具体包括:院系管理子系统、专业管理子系统、住宿管理子系统、选课管理子系统,以及图书借阅管理子系统。

二.实训步骤

1.需求分析阶段

院系管理子系统主要用于学校各个院系的管理。假定部门在成立时提供了院系名称(不可以为空)、院系编号(唯一)、院系领导(可以为空)信息。

专业管理子系统主要用于学校的专业建设与管理。假定在专业成立时提供了专业号、专业名称及所属系。一个专业只属于一个系,但一个系可以含有多个专业(也可以为0)。在学生入校前就要为学生建好班级,入校后皆有了唯一的班级和学号,在该系统中包含学生的多个信息。

住宿管理子系统主要为了方便学生住宿的管理,为学生更好的服务。

选课管理子系统旨在学生选课注册管理和学生成绩。假设学生入校后提供了学号、姓名等个人信息,其中学号是他们唯一拥有的,学校开设的课程,每门课都有其课程号、课程名、任课教师等的基本信息,其中各科有唯一的课程号。在学生开学选课,放学登记成绩。

图书借阅管理系统主要方便图书馆里工作人员的管理。假定学生开学时提供了各自的有效信息,同样学生的学号时唯一的,用学号当作学生的节借阅证号,图书有其自己的书号、书名、出版社等的信息,唯一的是书号。允许学生自由借书还书,以便登记借阅时间。

2.概念模型设计阶段

3.逻辑模型设计阶段

图B. 1 学生档案表

图B. 2 宿舍楼管理表

. . . . . .

4.逻辑结构设计阶段

表C.1 数据库 College

5.数据库实施阶段

a.创建数据库

use master

if db_id('College')is not null

begin

drop database College

end

create database College

on primary

(name=College_data,

Filename='F:\课程\chm SQL sever\作业\qlshooldb_data.mdf',

size=5mb,

Maxsize=30mb,

Filegrowth=10%)

log on

(

name=College_log,

Filename='F:\课程\chm SQL sever\作业\qlchooldb_data.ldf', size=4mb,

Maxsize=10mb,

Filegrowth=1mb

)

b.创建表

use College

if object_id('宿舍楼管理表')is not null

drop table宿舍楼管理表

if object_id('课程表')is not null

drop table课程表

. . . . . . .

go

create table班级表

(

c_no char(8)primary key,

sub_id char(2)null

)

create table学生档案表

(

s_no char(10)primary key,

c_no char(8)references班级表(c_no),

s_name char(10)nuLL,

sex char(2)null,

jiguan char(20),

birthday char(20)

)

. . . . . . .

c.向表插入信息

--向系部表插入信息

use College

go

insert into department

values('11','计算机系','1101');

insert into department

values('12','化学工程系','1201');

insert into department

values('13','基础课程','1301');

insert into department

values('14','总务处','3101');

go

--向专业表插入信息

use College

insert into院系部门结构表values('11','计算机系','1101') insert into院系部门结构表values('12','化学工程系','1201') insert into院系部门结构表values('13','基础课部','1301') insert into院系部门结构表values('14','总务处','3101') insert into专业目录表values('11','计算机软件','11')

insert into专业目录表values('12','计算机应用','11')

insert into专业目录表values('21','应用化学','12')

insert into专业目录表values('22','高分子材料','12')

......

d.创建索引

use College

if exists(select name from sys.indexes where name='IX_班级表')

drop index IX_班级表on班级表

create unique

index IX_班级表

on班级表(c_no)

go

if exists(select name from sys.indexes where name='IX_教工表')

drop index IX_教工表on教工表

create unique

index IX_教工表

on教工表(tea_id)

go

. . . . . .

e.创建视图

use College

go

create view V_学生成绩管理

as

select院系部门结构表.dep_name,专业目录表.sub_name,班级

表.c_no,学生档案表.s_no,学生档案表.s_name,课程

表.course_name,选课表.grade

from学生档案表,课程表,选课表,院系部门结构表,专业目录表,班级表

相关文档
最新文档