首页 -> 2007年第4期

大案例教学法在《SQL Server数据库》课程教学中的应用研究

作者:姚志良




  摘要:文章提出了以一个系统完整的工程案例贯穿一门课程的教学方法,即大案例教学法,并将这种教学法运用于《SQL Server数据库》课程教学实践中。并给出了大案例教学法的实施过程,探讨了案例库的建设,最后提出了大案例教学法中应注意的几个问题。
  关键词:大案例教学法;SQL Server数据库;案例库
  
  SQL Server是数据库软件设计人员的一门重要课程,是软件蓝领专业核心课程之一。以广东省软件蓝领专业为例,《SQL Server数据库》的课时达240学时,分两个学期完成教学任务,采用的教材是由广东省教学教材研究室编写的《SQL Server教程》。培养学生数据库设计开发的能力,这直接影响到学生的专业技能和毕业后的就业能力。本文提出了大案例教学法,经教学实践检验,取得了较好的教学效果。
  
  大案例教学法的定义
  
  大案例教学法基于传统的案例教学法,并借鉴了项目教学法的优点。所谓大案例教学法,就是在整个一学年的教学过程中,始终紧密围绕一个完整的工程案例来展开,随着教学进度的推进,将这个大案例逐步解剖为一个个独立的子案例,这些子案例又可以分解为更小的案例。这些小案例覆盖的知识点较少,学生相对比较容易掌握。学生在学习、掌握这些小案例的过程中,逐步理解了各个知识点及其相互之间的联系。最后再将这些小案例逐步组装成大案例,在此过程中,学生逐渐把握了SQL Server的总体架构,实现了对SQL Server开发与应用知识的构建。由于所选的大案例直接来自于实际的工程应用,因此学生在将这些小案例组装拆装的过程中,可以掌握大量实用的方法和技巧,从而积累经验,获得成就感,应用能力得到极大提高。笔者就是通过这种教学方法,使得学生轻松掌握了数据库完整性概念与实施、触发器、存储过程等普通职中生较难理解的内容。
  
  大案例教学法的实施
  
  结合教材,笔者选择了学生成绩管理数据库作为SQL Server数据库教学的大案例。学生成绩管理数据库主要由三张表组成,分别为学生情况表tblXSQK,包括系别、专业、班级、学号、姓名、出生日期、总学分等字段;学生课程表tblXSKC,包括课程号、课程名、开课学期、学时、学分等字段;学生成绩表tblXSCJ,包括学号、课程号、成绩、学分四个字段,其中“学分”为一个冗余字段,考虑到该系统除了成绩管理功能之外还需实现学分管理,笔者保留了这个冗余字段。
  根据职中生的学习特点,在教学中笔者淡化了数据库理论知识,将SQL Server作为一门技能型课程或一种数据库工具来讲授。直接从创建数据库出发,到如何创建表,如何操作数据库中的数据,然后到分析实施数据完整性约束,创建视图、索引、存储过程和触发器,最后产生完整的创建学生成绩管理数据库的脚本。笔者还用VB作为界面开发工具,完成了学生成绩管理系统的全部代码,让学生实现其中的几个模块,从而掌握了在VB中如何访问SQL Server数据库,如何执行查询和调用存储过程等。
  此外,笔者还设计了一系列的任务,作为课题实践,让学生上机去完成。小案例的设计与任务设计力求“一网打尽”,也就是说要考虑到该数据库实际应用时可能遇到的各种情况。例如在用如何操作成绩管理数据库中的数据这个子案例讲解SQL查询语言时,笔者通过将学生带入一个真实的需求环境,让学生分别扮演学生、任课教师、班主任、教务科工作人员等角色,让学生站在不同用户的立场,提出数据查询请求,然后分析实施。最后围绕该子课题设计的小案例和小任务多达几十个,先后要求学生完成的SQL查询命令不下六七十。为了检验学生掌握的情况,还用VB设计了随机抽题程序从这些查询任务中抽取若干条让学生进行上机考试。学生终过反复练习,终于掌握了多表联接查询、子查询、分组统计等初学SQL查询语言时较难掌握的知识点。
  
  大案例的选择与案例库的建设
  
  笔者认为,这是关系到大案例教学法能否成功实施的核心问题。
  数据库的应用日常生活中比比皆是,如超市的收银系统、学校的学生成绩管理系统、公司的进销存管理系统等。大案例的选择最好能结合教材,由广东省教学教材研究室编写的《SQL Server教程》第二版与第一版相比有很大的改进,主要采用了案例和任务驱动相结合的编写方式,突出了课题的模块性,许多案例是围绕学生成绩管理系统来展开的,这也是笔者选定采用学生成绩管理系统作为大案例的主要原因。但是需要指出的是,该教材对SQL Server最重要的一些内容,如数据完整性、游标等都没有涉及,关于触发器、存储过程这些大中型数据库常用的开发手段也只是一带而过,数据库设计的理论知识更是只字未提。因此笔者花费了很大的精力来编写和整理案例。从制作相关的PowerPoint课件,到采用软件工程的方法实现该系统,编写相关的技术文档等。
  现在很多学校在大谈案例教学的同时,不注重案例库的建设,依笔者拙见,案例库的建设乃是实施案例教学中关键也是最基本的一步。这一方面是由于目前缺乏适合中职教学的案例教学的教材,另一方面,恐怕还是有许多教育工作者对于案例教学的认识不够全面,不注重案例的搜集整理。就《SQL Server数据库》这门课程而言,笔者认为大案例最好应来源于成熟的数据库软件产品,或是由教师单独或参与开发的能够用于实际应用的SQL Server数据库软件系统。
  确定采用的大案例后,切忌照抄照搬,我们应根据职中学生的学习特点,将大案例作适当的处理,使得所有的知识点能够得到合理的分布,循序渐进地展开教学,并根据学生的反馈,及时作出适当调整。这些都要求教师对所采用案例不断地进行整理、分析并归档,以便为以后的案例教学提供可靠的依据和借鉴。
  
  关于大案例教学法的几点说明
  
  强调“大”案例,“大”实指系统的、完整的意思如前文所述,大案例通常是由一个成熟的软件系统而来,因此学生通过案例演习,可以实现学用结合,少走弯路,从一开始就掌握了正确的、实用的技术和方法,实际应用能力得到很大提高。目前,出现了一些适合高校和高职学校使用的围绕一个这样的大案例来编写的教材,大多是项目教学和程序设计方面的。而适合中职学校使用的,特别是数据库方面的此种教材笔者尚未发现。
  以大案例为主,其他案例为辅大案例教学法强调一个学期甚至一学年的教学过程都围绕大案例来进行,但并非指教学中不再采用其他的案例。为了提高学生学以致用的积极性,培养他们灵活运用知识的能力,我们必须采用更多更丰富的案例,但这些案例并非是成系统的,而是偏重于某一方面的知识点。例如,在讲完“用触发器实现学分的自动管理”这个子案例后,笔者还分析了许多触发器的典型应用的案例,如进销存系统中库存的自动管理等。现实生活中数据库应用的实例实在太多了,教师平时应注重积累。实例一方面开阔了学生的视野,另一方面也有助于活跃学生的思维,提高分析问题、解决问题的能力。
  以案例教学法为主,辅以灵活多变的教学方法为了提高学生学习的兴趣,促进学生学习能力的提升,在教学中,在坚持大案例教学方法的基础上,还可以根据情况采用如任务驱动、情景导入、试错法、问题法等教学方法,激发学生的求知欲,提高学习兴趣。
  以技能教学为主,理论教学为辅软件蓝领的主要培养目标就是初级程序员或代码员,不需要掌握高深的理论知识,而且职中生基础普遍不扎实,因此教学中应以技能教学为主。但是笔者认为,作为软件蓝领,还是应该掌握一些数据库原理方面的基础理论。根据笔者的教学实践,在学生已经初步掌握SQL Server数据库设计技能的基础上,来介绍数据库设计原理比较合适。因为此时,学生已经积累了较多数据库设计的实际技巧和方法,有了自己的体会,此时再介绍为什么要如此设计,应遵循什么设计原则,学生反而会比较好理解和接受。此外,笔者认为,在介绍数据库原理时,结合职中生的实际情况,应尽量采用通俗易懂的语言,避免晦涩的理论说教。
  以一个系统的大案例贯穿一门课程的教学,使得学生在学完一门课程之后,不但能够掌握课程的书本内容,而且掌握了大量的实际应用技能。笔者在SQL Server数据库这门软件蓝领的核心课程中实践了这种教学方法,取得了较好的教学效果。□