(2)Update 学生成绩信息的存储过程
CREATE PROCEDURE UpdateSC
@学号 int(4),
@课程号 varchar(5),
@分数 float,
AS
update SC
set 分数=@分数
where 学号=@学号 and 课程号=@课程号
GO
(3) 对不有不及格科目的所有学生的信息查询的存储过程
CREATE PROCEDURE selectstuendt_1
AS
SELECT StudentsInfo.学号, 姓名,班级,课程名,分数
FROM StudentsInfo, SC,Course
Where 分数 in(0, 60) And StudentsInfo.学号=SC.学号 And SC.课程号=Course.课程号
GO
3.设计结果与分析
3.1数据库的试运行
(1) 触发器功能的试运行
在对StudentsInfo上的SUpdate触发器的验证时,先运行sql语句:
select *
from dbo.SC;
得到在update操作前的SC表的所有内容,如图16所示,接着执行对StudentsInfo表的Update操作,即如下语句:
update dbo.StudentsInfo
set 学号='2005541007'
where 学号='2005541023';
select *
from dbo.SC;
得到新的SC表,如图17所示, 学号为2005541023的自动修改为2005541007。
图16 update执行前SC表 图17 update执行后SC表
(2)存储过程的试运行
这里只列出一个存储过程的试运行结果,为了不重复,其它的就略去,下面是存储过程selectstuendt_1的运行情况,图18显示了SC表的内容即学生成绩情况,运行了存储过程后便筛选出了不及格的学生信息,如图19所示。
图18 SC表内容 图19 筛选结果
3.2 数据库的运行和文护
当试运行数据库合格后,数据库开发设计的工作就基本完成了,接下来就是正式运行中的调试,应为该系统比较简单,数据量小,数据库中几乎不会发生什么大的变化,但是还是需要做好数据的备份,在sqlserver中我们可以利用备份数据库的功能对已经设计好的数据做备份,如果数据库受到破坏或系统故障,我们便可轻松的利用备份文件恢复数据库的数据。当然也可以利用其他各种方法进行数据文护。
4.设计体会
通过两星期的数据结构课程设计实习,我从中受益匪浅,并且对数据库这一门课程有了更深一步的认识。在实习中,我们可以把这学期所学的理论知识和实践联系起来,在所要开发的程序中渐渐融会贯通。虽然我们对这些知识还运用得还不是很熟练,但是相信在现在和今后的学习中会得到更加深刻的掌握。
在课程设计中,设计了一个学生学籍管理系统,其中包含了对学生基本信息的管理,学生必修课程以及成绩管理,学校教师资源管理,学校专业以及院系等。基本上包含了学籍管理所要求的信息,能够完成一定的数据管理功能。但是这是一个完全不能真正用与实际的系统,它没有操作界面,没有完善的数据完整性的约束,也不具有可靠的安全性。但总之在设计当中我们学习到了许多东西,用到了很多的数据库的理论知识,增强了一定的实践能里。
实习过程中我们一边设计一边探索,发现理论和实践要充分地结合,是需要扎实的基本功的,这就表明学好基础知识是理论付诸实践的前提。在实习中我们学到了很多,希望在以后我们能充分利用实习的机会充实自己,并希望这样的机会能被更好更多地提供。
5.参考文献
[1] 谢宋和, 甘 勇. 单片机模糊控制系统设计与应用实例[M]. 北京: 电子工业出版社, 1999.5:20-25
[2] 潘新民, 王燕芳. 微型计算机控制技术[M], 第2版. 北京: 电子工业出版社, 2003.4:305-350
[3] 范立南, 谢子殿. 单片机原理及应用教程[M]. 北京: 北京大学出版社, 2006.1:123-130
[4].周桓,徐薇.数据库系统开发.北京:人民邮电出版社,2006:260-271
[5].Bain T 等.SQL Server2000数据库.北京:电力出版社,2003:125-220
[6].贾讽波,杨树青,杨玉顺.数据库应用实例.北京:人民邮电出版社,2006:25-46