数据库课程设计教务管理系统(sql sever2008)(5)

2019-01-19 18:56

《数据库原理》课程设计报告 - 21 -

select Sname, Cource.Courceno,Grade from Student, Cource, Elective where Student.Sno= Elective.Sno and Cource.Courceno= Elective.Courceno with check option

4.用于显示当前所选课程基本信息的视图定义如下:

create view ElectiveView as

select Sname,Courcename,Courcedirector from Student, Cource,Elective where Student.Sno= Elective.Sno and Cource.Courceno= Elective.Courceno with check option

5.用于显示所开设课程基本信息的视图定义如下:

create view CourceView as

select Courcename,Courcedirector from Cource

6.用于查询学生平均成绩的视图定义如下:

create view AverageView(Sno,AVG_Grade) AS

SELECT Sno,AVG (Grade) FROM Elective group by Sno

3.5.2建立存储过程

1.为教师表建立一个存储过程

go

create procedure Update_Tsal @tno char(10) as begin

update Teacher set

Tsal = '8000' where @tno=Tno end

declare

@tno1 char(10) set @tno1='011343' exec Update_Tsal @tno1

2.为系表建立一个存储过程

Create procedure Department_insert

21

《数据库原理》课程设计报告 - 22 -

@Xno char(10), @Xname char(10), @Xdiredtor char(10) As

Insert into Department values(@Xno,@Xname,@Xdiredtor); select *

from Department

exec Department_insert '07','市政学院','085426' select *

from Department

3.5.4建立触发器

1.教师表

create trigger T1 On Teacher for update as

if UPDATE(Tname) begin

print'拒绝修改' rollback end

update Teacher set Tname='吴迪' where Tno='022124'

2. 学生表

create trigger student_insert on Student for insert as

print'有新同学加入'

insert into Student values('0113002','周新','女','平顶山市新华',20,'软件工程' ,'0113')

3.选课表

create trigger 删除选课 on Elective for DELETE AS

if((select Courceno from deleted) in (select Courceno from Elective)) begin

print'删除选课成功'

22

《数据库原理》课程设计报告 - 23 -

rollback end

delete

from Elective

where Sno='0513001' and Courceno='05001'

4.院系

create trigger 添加院系 on Department for insert as

print '添加新系'

insert into Department values('0844131','考古系','周新新')

5 班级信息的更新

create trigger 班级信息 on Class for update as

if update(Cdirector) begin

select Inserted.Cno,Inserted.Cname,Inserted.Xno,deleted.Cdirector as 原班主任,Inserted.Cdirector as 新班主任 from Deleted,Inserted

where Deleted.Cno=Inserted.Cno end

update Class

set Cdirector='023476' where Cno='0213'

6.课程

create trigger 添加课程 on Cource for insert as

print '添加课程'

insert into Cource values('00001','大学英语',4,'033226')

7.教室信息

create trigger 添加教室 on Classroom for insert as

print'添加新的教室'

23

《数据库原理》课程设计报告 - 24 -

insert into Classroom values('0834131','C-03','04004')

8.占用信息

create trigger 占用信息更改 on Occupy for update as

if UPDATE(Usetime) begin

select inserted.Cno,inserted.Rno,inserted.Stime,deleted.Usetime as 原课时, inserted.Usetime as 新课时 from deleted,inserted

where deleted.Cno=inserted.Cno,deleted.Rno=inserted.Rno, deleted.Stime=inserted.Stime end

update Occupy set Usetime=30

where Cno='0113',Rno='113',Stime='2015-04-26'

9.授课信息

create trigger 授课信息 on Teaching for insert as

print'无法插入该信息'

insert into Teaching values('0111111','022','02','2015-4-2')

3.6 数据库实施

3.6.1 数据表截图

1.Deartment表

24

《数据库原理》课程设计报告 - 25 -

图3-1

2.Teacher 表

图 3-2

3.Class 表

图 3-3

25


数据库课程设计教务管理系统(sql sever2008)(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:巧妙利用身边数学提高学生认知能力

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: