数据库_教务管理系统_综合实验报告

华北科技学院计算机系综合性实验

实 验 报 告

课程名称 《数据库原理及应用教程》 实验学期 2011 至 2012 学年 第 2 学期 学生所在系部 计算机学院 年级 专业班级 学生姓名 学号 任课教师 郭红 实验成绩

计算机系制

《数据库原理及应用教程》课程综合性实验报告

2

3

4

5

6

7

8

9

--一、创建表 -- 建立系别表 CREATE TABLE sdept

(Dno CHAR (10) PRIMARY KEY , Dname CHAR (20) UNIQUE , Dphone CHAR (20), );

-- 建立教师表 create table teacher (Tno CHAR (10) PRIMARY KEY , Tname CHAR (20) not null,

Tsex CHAR (2) CHECK (Tsex IN (' 男' , ' 女' )), Prof CHAR (4), Tage SMALLINT , Dno CHAR (10) ,

FOREIGN KEY (Dno ) REFERENCES Sdept (Dno ) );

-- 建立学生表 CREATE TABLE student (Sno CHAR (10) PRIMARY KEY , Sname CHAR (20) NOT NULL,

Ssex CHAR (2) CHECK (Ssex IN (' 男' , ' 女' )), Sage SMALLINT ,

Dno CHAR (10), FOREIGN KEY (Dno ) REFERENCES Sdept (Dno ) );

-- 建立课程表 CREATE TABLE course

(Cno CHAR (10) PRIMARY KEY , Cname CHAR (20) UNIQUE , Credit SMALLINT , );

--建立授课表

CREATE TABLE TC (Cno CHAR (10), Tno CHAR (10), );

-- 建立选课表 CREATE TABLE SC (Sno CHAR (10) , Cno CHAR (10),

Grade SMALLINT CHECK (Grade >=0 AND Grade

10

PRIMARY KEY (Sno , Cno ),

);

----------------------------------------------------------

--学生的学号、成绩等信息查询的视图

create view V_student

as

select student . Sno , Sname , cname , Credit , grade

from student , SC , course

where student . Sno =SC . Sno and

course . Cno =SC . Cno

--教师基本信息查询的视图

create view V_teacher

as

select Tname , Prof , Dname

from teacher , sdept

where teacher . Dno =sdept . Dno

----------------------------------------------

--在教师表中系代号列上建立索引

create unique index teadno

on teacher (Tno , Dno );

--在学生表姓名列上建立索引

create unique index stusname

on student (Sno , sname );

-----------------------------------------------

--创建学生用户

create login u1

with password ='111'

use GRADE

create user 学生

for login u1

--对学生用户进行授权

grant select

on student

to 学生

grant select

on V_student

to 学生

grant select

on SC

to 学生

grant select

on TC

to 学生

grant select

on V_teacher

to 学生

--创建教师用户

create login u2

with password ='111'

use GRADE

create user 教师

for login u2

--对教师用户进行授权

grant select

on student

to 教师

grant select

on TC

to 教师

grant select , update

on teacher

to 教师

grant select , insert , update (grade )

on SC

to 教师

--创建教务管理员用户

create login u3

with password ='111'

use GRADE

create user 教务处

for login u3

--对教务管理员用户进行授权

grant select , update , insert , delete

on teacher

to 教务处

grant select , update , insert , delete

on student

to 教务处

grant select , update , insert , delete

on sdept

to 教务处

grant select , update , insert , delete

on course

to 教务处

grant select , update , insert , delete

on sdept

to 教务处

grant select , update , insert , delete

on course

to 教务处

grant select , update , insert , delete

on TC

to 教务处

grant select , update , insert , delete

on SC

to 教务处

------------------------------------------

--删除教师信息触发器

create trigger 删除教师信息

on teacher

for delete

as

if exists(select * from tc where tno =(select tno from deleted ))

begin

print 'course 表里有该教师的课程,请先删除course 表里的记录!'

rollback

end

--演示删除教师信息触发器的操作

delete

from teacher

where tno ='t1'

--删除学生信息触发器

create trigger 删除学生信息

on student

for delete

as

if exists(select * from sc where sno =(select sno from deleted ))

begin

print 'SC 表里有该学生的选课课程,请先删除SC 表里的记录!'

rollback

end

--演示删除学生信息触发器的操作

delete

from student

where sno ='s1'

--选课触发器

create trigger 选课

on SC

for insert

as

if exists(select Cno from course where cno =(select cno from inserted )) begin

print ' 选课成功'

end

--演示执行“选课”触发器

insert

into SC (sno , cno )

values ('s1' , 'c3' )

--查询选课结果

select *

from SC

--删除选课触发器

create trigger 删除选课

on SC

for DELETE

AS

if exists(select Cno from sc where cno =(select cno from deleted )) begin

print ' 删除选课成功'

end

--演示执行“删除选课”触发器

delete

from sc

where sno ='s1' and cno ='c3'

--------------------------------------------------- --查询成绩的存储过程

CREATE PROCEDURE 查询成绩 @sn char (10)

as

select student . sno , sname , cname , Credit , grade

from student , course , SC

where student . sno =sc . sno and

course . cno =sc . cno and

student . sno =@sn

--查询学号为“s1”的学生成绩

exec 查询成绩 's1'

华北科技学院计算机系综合性实验

实 验 报 告

课程名称 《数据库原理及应用教程》 实验学期 2011 至 2012 学年 第 2 学期 学生所在系部 计算机学院 年级 专业班级 学生姓名 学号 任课教师 郭红 实验成绩

计算机系制

《数据库原理及应用教程》课程综合性实验报告

2

3

4

5

6

7

8

9

--一、创建表 -- 建立系别表 CREATE TABLE sdept

(Dno CHAR (10) PRIMARY KEY , Dname CHAR (20) UNIQUE , Dphone CHAR (20), );

-- 建立教师表 create table teacher (Tno CHAR (10) PRIMARY KEY , Tname CHAR (20) not null,

Tsex CHAR (2) CHECK (Tsex IN (' 男' , ' 女' )), Prof CHAR (4), Tage SMALLINT , Dno CHAR (10) ,

FOREIGN KEY (Dno ) REFERENCES Sdept (Dno ) );

-- 建立学生表 CREATE TABLE student (Sno CHAR (10) PRIMARY KEY , Sname CHAR (20) NOT NULL,

Ssex CHAR (2) CHECK (Ssex IN (' 男' , ' 女' )), Sage SMALLINT ,

Dno CHAR (10), FOREIGN KEY (Dno ) REFERENCES Sdept (Dno ) );

-- 建立课程表 CREATE TABLE course

(Cno CHAR (10) PRIMARY KEY , Cname CHAR (20) UNIQUE , Credit SMALLINT , );

--建立授课表

CREATE TABLE TC (Cno CHAR (10), Tno CHAR (10), );

-- 建立选课表 CREATE TABLE SC (Sno CHAR (10) , Cno CHAR (10),

Grade SMALLINT CHECK (Grade >=0 AND Grade

10

PRIMARY KEY (Sno , Cno ),

);

----------------------------------------------------------

--学生的学号、成绩等信息查询的视图

create view V_student

as

select student . Sno , Sname , cname , Credit , grade

from student , SC , course

where student . Sno =SC . Sno and

course . Cno =SC . Cno

--教师基本信息查询的视图

create view V_teacher

as

select Tname , Prof , Dname

from teacher , sdept

where teacher . Dno =sdept . Dno

----------------------------------------------

--在教师表中系代号列上建立索引

create unique index teadno

on teacher (Tno , Dno );

--在学生表姓名列上建立索引

create unique index stusname

on student (Sno , sname );

-----------------------------------------------

--创建学生用户

create login u1

with password ='111'

use GRADE

create user 学生

for login u1

--对学生用户进行授权

grant select

on student

to 学生

grant select

on V_student

to 学生

grant select

on SC

to 学生

grant select

on TC

to 学生

grant select

on V_teacher

to 学生

--创建教师用户

create login u2

with password ='111'

use GRADE

create user 教师

for login u2

--对教师用户进行授权

grant select

on student

to 教师

grant select

on TC

to 教师

grant select , update

on teacher

to 教师

grant select , insert , update (grade )

on SC

to 教师

--创建教务管理员用户

create login u3

with password ='111'

use GRADE

create user 教务处

for login u3

--对教务管理员用户进行授权

grant select , update , insert , delete

on teacher

to 教务处

grant select , update , insert , delete

on student

to 教务处

grant select , update , insert , delete

on sdept

to 教务处

grant select , update , insert , delete

on course

to 教务处

grant select , update , insert , delete

on sdept

to 教务处

grant select , update , insert , delete

on course

to 教务处

grant select , update , insert , delete

on TC

to 教务处

grant select , update , insert , delete

on SC

to 教务处

------------------------------------------

--删除教师信息触发器

create trigger 删除教师信息

on teacher

for delete

as

if exists(select * from tc where tno =(select tno from deleted ))

begin

print 'course 表里有该教师的课程,请先删除course 表里的记录!'

rollback

end

--演示删除教师信息触发器的操作

delete

from teacher

where tno ='t1'

--删除学生信息触发器

create trigger 删除学生信息

on student

for delete

as

if exists(select * from sc where sno =(select sno from deleted ))

begin

print 'SC 表里有该学生的选课课程,请先删除SC 表里的记录!'

rollback

end

--演示删除学生信息触发器的操作

delete

from student

where sno ='s1'

--选课触发器

create trigger 选课

on SC

for insert

as

if exists(select Cno from course where cno =(select cno from inserted )) begin

print ' 选课成功'

end

--演示执行“选课”触发器

insert

into SC (sno , cno )

values ('s1' , 'c3' )

--查询选课结果

select *

from SC

--删除选课触发器

create trigger 删除选课

on SC

for DELETE

AS

if exists(select Cno from sc where cno =(select cno from deleted )) begin

print ' 删除选课成功'

end

--演示执行“删除选课”触发器

delete

from sc

where sno ='s1' and cno ='c3'

--------------------------------------------------- --查询成绩的存储过程

CREATE PROCEDURE 查询成绩 @sn char (10)

as

select student . sno , sname , cname , Credit , grade

from student , course , SC

where student . sno =sc . sno and

course . cno =sc . cno and

student . sno =@sn

--查询学号为“s1”的学生成绩

exec 查询成绩 's1'


相关内容

  • 高校教务处岗位职责(共9篇)
  • 篇一:高校教务处工作职责 高校教务处工作职责(转) (2009-07-07 21:34:10) 教务处是在院长和分管教学副院长领导下的有关教学业务的职能机构.其主要职责是: 一.教务行政管理 1.负责专业.课程建设工作.拟订全院专业建设规划.提出专业结构调整方案.具体组织实施专业申报.专业建设和专业 ...

  • 上海工程技术大学实验教学管理条例
  • 上海工程技术大学实验教学管理条例 沪工程教[2004]100号 第一章总则 第一条实验教学是高等院校本科教学体系的重要组成部分,是培养学生理论联系实际.提高创新能力的重要教学环节.为规范我校实验教学管理,保证实验教学质量,培养合格人才,特制定本管理条例. 第二条实验教学是按照一定的教育目标.教学计划 ...

  • 四川大学本科实验教学管理办法(修订)
  • 四 川 大 学 文 件 川大教[2006]120号 关于印发<四川大学本科实验教学管理办法 (修订)>的通知 校内各有关单位: 为了进一步规范我校的本科实验教学工作,提高教学质量,学校重新修订了<四川大学本科实验教学管理办法>,现印发给你们,请遵照执行. 附件:四川大学本科实 ...

  • 四川农业大学教务处
  • 四川农业大学教务处 教发[2009]12号 关于做好2007级本科生毕业实习.毕业论文(设计) 工作的通知 本科生毕业实习和毕业论文(设计)是教学计划的重要组成部分,是培养学生综合技能的重要实践性教学环节.为了进一步规范本科生毕业实习.毕业论文(设计)工作的管理,着力提高我校本科生毕业论文(设计)质 ...

  • 本科生毕业设计(论文)工作指导意见
  • 成都理工大学 本科生毕业设计(论文)工作指导意见 ( 2013版 ) 教 务 处 二○一三年三月八日 目 录 一.总 则 ∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙∙ ...

  • 关于发布2014版本科毕业设计(论文)指导意见的通知
  • 成都理工大学 学士学位论文(设计)工作指导意见 ( 2014版 ) 教 务 处 二○一四年四月二十二日 目 录 一.总 则 ························································································ ...

  • 教务处工作职责.岗位职责.
  • 教务处工作职责.岗位职责 一.教务处工作岗位职责 1.协助校长室具体负责学校教育教学工作的领导.组织和常规管理. 2.管理学生学籍.管理教学质量(各类成绩数据). 3.管理教师业务档案. 4.负责小学.初中招生工作及小学.初中毕业生工作 5.协助校长室进行教师聘任与安排工作. 6.按照各类目标管理和 ...

  • 高校教师工作手册样本
  • 湖南电子科技职业学院 教师工作手册 20 -20 学年第 学期 系 部 教 研 室 教 师 姓 名 技 术 职 称 年 月 日 填 表 说 明 1.按照具体落实情况,客观反映各项工作,实事求是地填写各种表格的规定栏目. 2.及时填写,以免遗忘或疏漏. 3.填写内容要求准确.简明扼要. 4.定期交教研 ...

  • 软件工程实验指导书--要求及参考范本
  • 软件工程课程 综合实验 验 指 导 计算机学院 2011年9月 实 书 <软件工程>综合实验指导书 目录(Contents) 第一章 概述(Overview) ................................................................ ...