欢迎来到天天文库
浏览记录
ID:51930714
大小:127.50 KB
页数:26页
时间:2020-03-19
《SQL语言教学的研究与实践.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、SQL语言教学的研究与实践摘要:本文针对教材中的一些例题进行了分析与探讨,给出了同一问题不同的解决方案;设计了面向SQL语言的辅助教学系统。实践教学表明,这些措施的实施为学生深刻领会和运用SQL语言提供了帮助,增强了学生的实践能力。 关键词本文来自:计算机毕业网:SQL语言;数据库系统;存储过程 引言 在“数据库原理”课程的教学中,SQL语言是一个难点,也是一个重点,加上该课程的教学大纲中明确要求学生要全面掌握、深刻理解、熟练应用SQL语言。尽管SQL语言有简单和高度结构化的特点,但在实
2、际教学中学生常是“上课一听就懂,上机无法下手”,这种情况基本上是理论学习和上机实验不能同步进行。本文对教材中的一些例题进行了分析,由于教材中使用的数据库系统与实际使用有一定的差距,因此这些例题不能在一些数据库中实现,导致了学生上机测试的困难。本文以SQLServer2000为数据库的实验平台,对那些不能实现的例题进行了相应的转化,给出了同一问题的多种实现方法,设计了针对SQL语言使用的辅助实验系统。为了进一步提高学生对SQL的实践能力,介绍了存储过程和自定义函数的使用。在进行SQL语言教学的过程中,这些方法和措施的实行,已经在数据库的综合实验和毕业设计
3、中都得到很好的体现。 1教材例题,缺乏具体环境 例题是学生学习新概念、领会新知识的一种重要手段,它在整个教学过程中起着非常重要的作用。尽管SQL语言是一种通用的语言,但是在不同的关系数据库中管理系统中,仍然有一些微小的差别。教材中推荐使用国产金仓数据库管理系统KingbaseEs作为实验平台,但由于该数据库不具有普遍的使用性,而目前普遍使用的是SQLServer、Access、Oracle等数据库的系列版本,这造成了例题与实际使用环境的脱节。因此,在教学中,如何根据使用环境的不同,对教材种的例题进行及时的调整
4、显得尤为重要。在本文中,以SQLServer 2000作为数据库的使用环境,下面通过一些例题来说明教材[1]中的实现方式与实际使用环境的差异性。 【例51】查询选修了课程1又选修课程2的学生。 教材上给出了如下的表达: SelectSno FromSC WhereCno=’1’ Intersect SelectSno FromSC WhereCno=’2’ 而这种表达方式在SQLServer2000中是无法实现的。在三种集合操作中,只有并操作U
5、nion可以以这种方式使用,而交操作Intersect和差操作Except必须通过转化才能在SQLServer2000中使用。Intersect和Except关键字在SQLServer2000中是两个函数,分别表示两个集合的交运算和差运算。下面给出【例51】对应的正确代码: SelectSno FromSC WhereCno=’1’ANDSnoin (SelectSno FromSC WhereCno=’2’); 同样【例52】的代码也必须进行转化。 【例39】查询与“刘晨
6、”在同一个系学习的学生。 在教材中特别强调子查询一定要跟在比较符之后,并指出了下列语句 SelectSno,Sname,Sdept Fromstudent Where(SelectSdept FromStudent WhereSname=’刘晨’)=Sdept 是错误的,但是上述语句在查询分析器中能正常执行,且能给出正确的结果。 2一题多解,拓展学生思维 由于每个学生思考的途径不同,可能会对同一个问题有许多不同的解法,在教学中,鼓励学生自觉
7、探求多种解法,这样不仅使学生的基础知识、基本技能得到训练,而且使学生的能力得到增强,智力得到开发。 【例21】查询缺少成绩的学生的学号和相应的课程号。 SelectSno,Cno FromSC WhereGradeISNULL; 所谓空值是“不知道”或“无意义”的值,“0”和“空格”都不是空值。以上代码等同于 SelectSno,Cno FromSC WhereGrade=’’; 【例7】将计算机科学系全体学生的成绩置零。 UpdateSC S
8、etGrade=0 Where‘CS’= (SelectSdept
此文档下载收益归作者所有