论文部分内容阅读
摘要:数据库课程在计算机专业人才培养体系中有着非常重要的位置,本文就数据库课程教学中存在的三个问题进行了探讨,并提出解决方法,有效地提高了教学效果与学习效率。
关键词:数据库教学;课程定位;Transact-SQL语言;基于工作过程
数据库是计算机专业的核心专业基础课,这门课程本身具有很高的理论性与实践性,学生要想在短时间内很好地掌握这门课程不太现实。因此对数据库课程教学的改革就是教师们不得不面对的一个难题。在实施改革的过程中,有一些基本问题很容易忽略。在长期的教学活动中,笔者对课程定位、Transact-SQL语言的学习、基于工作过程的数据库教学三大问题有了较为深入的思考。
1 课程定位
也许每一位教师对于数据库课程的定位不一定都很明晰,或者明晰但未向学生表述。实际上对于以前从未使用或较少使用计算机进行相关开发而今后又需要进入IT行业工作的学生来说,这个问题非常重要甚至直接关系到最后教学效果的好坏。
课程的定位不能对所有学生都一样,作为教师只能将定位的相关信息通过适当的容易理解的载体让学生了解,他们在了解的过程中从自身的职业规划出发做出适合于自己的课程定位。定位的高低就是在学生在学习课程时自我要求的高低。例如:计算机网络专业的学生对于数据库课程的定位可能就不一样。有的学生把自己的职业规划定位于网络工程师,因此他们觉得对于数据库的知识在了解层面上已经足够;而有的学生把自己的职业规划定位于网页工程师,对于数据的知识不但要了解还要熟练掌握。所以数据库课程定位的明晰有利于学生做到心中有数。
那用什么载体作为切入点能让学生清楚本课程的定位呢?笔者认为最好的载体就是计算机专业招聘信息。笔者在对计算机网络专业授课时有意截取招聘网站关于网络工程师、网页工程师与数据库DBA的需求信息,让同学们认真阅读,并从职业规划角度出发,找出自己的定位。
以SQL Server课程为例,对上述三种职业有三个层次的定位:
(1)数据库是一门基础性的课程,只需了解基本相关知识,掌握基本操作即可。
(2)经过本课程的学习成为一名合格的数据库开发人员,具体教学目标:熟悉服务器管理、数据库管理、数据库对象的操作;熟练掌握Transact-SQL语言、SQL Server权限管理、SQL Server数据转换。能够使用Transact-SQL语言,灵活使用视图、触发器、存储过程和游标。了解数据库设计的基本技术。
(3)经过本课程学习,在熟练掌握基本知识的基础上致力于成为数据库管理员,对数据库容灾技术、安全技术、调优技术要有研究。
三个层次的定位分别对应于计算机网络专业学生职业规划的不同要求。在教学过程中对三类学生要求不同、教学侧重点也不同。对于课程定位为第一类的学生,要循循善诱,捕捉他们的兴趣,提高他们的学习热情;第二类学生要严格要求,以案例为向导,让在他们在熟悉整个网页开发流程的同时,明确在开发过程中要用到的数据库知识,做到看书的时候有重点;最后一类学生,在严格要求的同时要引导他们走出课本,面向更大的课堂:自学和社会实践。
2 Transact-SQL语言的学习
Transact-SQL语言是SQL Server数据库的灵魂,特别是对于开发人员来讲能使用鼠标进行的操作都可以用语言来编写;相反地,使用语言进行的操作用鼠标不一定能够完成,所以Transact-SQL语言的重要程度不言而喻。在教学过程中笔者曾经无数次碰到这样的问题:在讲述某个原理并且用语言编程操作的时候,学生接受较快;上机实验的时候学生知道要做的事情却无从下手。仔细询问以后发现学生SQL语言基本单词拼写的熟练程度很低,相关语法囫囵吞枣地接受并不注意细节,导致最终程序运行不出来。
针对以上问题笔者推荐以下方法:
(1)归纳Transact-SQL单词库。对于重要的核心单词要让学生做到反复记忆。笔者曾经将Transact-SQL语言操作进行归纳,做到记忆目标清晰明了,在此基础上进行相应的语言功能拓展,便于学生进行知识梳理。针对遗忘特性,不定期对核心单词库中核心单词进行拼写、基本用法的抽查作为平时成绩录入系统。
(2)编辑病例程序汇编。典型程序要学生自己多动手编写,遇到程序错误要训练他们根据系统提示找出问题所在,将多年教学过程中积累的编程时学生容易出错的程序编辑成册,发给学生以做参考,如图1。
3 基于工作过程的数据库教学
自从姜大源教授提出基于工作过程课程体系开发这个在中国高职教育界具有影响力的教育方式以来,各个行业的高职教育改革藉此轰轰烈烈地展开,数据库课程的教学也不例外。
诚然,数据库课程本身是一门操作性非常强的学科,也能按照基于典型工作过程的教学方法进行教学并取得一定的效果。我们举办各种竞赛,把学生熟悉的生活数据如学生宿舍管理系统变为真实的数据库进行发布和管理,教学也因此取得比较好的效果。
但是面向工作过程的教学并不是万能药,因为数据库的服务面向各行各业、计算机水平层次不齐的各类用户,有的时候用户所提出的要求本身就是“非典型性”的,遇到这种情况学生就无法根据典型性工作过程迁移相关知识解决“非典型性”问题。因此,在教学中笔者不但要把握案例教学,还要强调工作情景教学,充分强调学生在压力下分析问题解决问题的能力。
在实验课堂上可对学生分组,使学生互相充当客户提出各种要求,使被要求学生在压力下解决问题。采用这种方式的好处是,容易让学生进入真实的工作状况,找出自己解决问题的方法。例如在对insert命令实验的时候有的同学就提出:“能不能将已存在的B表中的数据批量插入到A表当中?”这个知识点书本根本就没有提到,怎样完成这个非典型性任务?作为教师要引导学生在互联网特别是谷歌图书搜索、文献搜索、参数搜索等功能或SQL Server“帮助”中寻找答案:
INSERT INTO A
SELECT * FROM B
搜索、整理信息的过程就是针对问题背景进行知识迁移的过程,知识的迁移就能提高学生知识的熟练程度以及横向解决其他计算机课程的非典型性问题的能力。
关键词:数据库教学;课程定位;Transact-SQL语言;基于工作过程
数据库是计算机专业的核心专业基础课,这门课程本身具有很高的理论性与实践性,学生要想在短时间内很好地掌握这门课程不太现实。因此对数据库课程教学的改革就是教师们不得不面对的一个难题。在实施改革的过程中,有一些基本问题很容易忽略。在长期的教学活动中,笔者对课程定位、Transact-SQL语言的学习、基于工作过程的数据库教学三大问题有了较为深入的思考。
1 课程定位
也许每一位教师对于数据库课程的定位不一定都很明晰,或者明晰但未向学生表述。实际上对于以前从未使用或较少使用计算机进行相关开发而今后又需要进入IT行业工作的学生来说,这个问题非常重要甚至直接关系到最后教学效果的好坏。
课程的定位不能对所有学生都一样,作为教师只能将定位的相关信息通过适当的容易理解的载体让学生了解,他们在了解的过程中从自身的职业规划出发做出适合于自己的课程定位。定位的高低就是在学生在学习课程时自我要求的高低。例如:计算机网络专业的学生对于数据库课程的定位可能就不一样。有的学生把自己的职业规划定位于网络工程师,因此他们觉得对于数据库的知识在了解层面上已经足够;而有的学生把自己的职业规划定位于网页工程师,对于数据的知识不但要了解还要熟练掌握。所以数据库课程定位的明晰有利于学生做到心中有数。
那用什么载体作为切入点能让学生清楚本课程的定位呢?笔者认为最好的载体就是计算机专业招聘信息。笔者在对计算机网络专业授课时有意截取招聘网站关于网络工程师、网页工程师与数据库DBA的需求信息,让同学们认真阅读,并从职业规划角度出发,找出自己的定位。
以SQL Server课程为例,对上述三种职业有三个层次的定位:
(1)数据库是一门基础性的课程,只需了解基本相关知识,掌握基本操作即可。
(2)经过本课程的学习成为一名合格的数据库开发人员,具体教学目标:熟悉服务器管理、数据库管理、数据库对象的操作;熟练掌握Transact-SQL语言、SQL Server权限管理、SQL Server数据转换。能够使用Transact-SQL语言,灵活使用视图、触发器、存储过程和游标。了解数据库设计的基本技术。
(3)经过本课程学习,在熟练掌握基本知识的基础上致力于成为数据库管理员,对数据库容灾技术、安全技术、调优技术要有研究。
三个层次的定位分别对应于计算机网络专业学生职业规划的不同要求。在教学过程中对三类学生要求不同、教学侧重点也不同。对于课程定位为第一类的学生,要循循善诱,捕捉他们的兴趣,提高他们的学习热情;第二类学生要严格要求,以案例为向导,让在他们在熟悉整个网页开发流程的同时,明确在开发过程中要用到的数据库知识,做到看书的时候有重点;最后一类学生,在严格要求的同时要引导他们走出课本,面向更大的课堂:自学和社会实践。
2 Transact-SQL语言的学习
Transact-SQL语言是SQL Server数据库的灵魂,特别是对于开发人员来讲能使用鼠标进行的操作都可以用语言来编写;相反地,使用语言进行的操作用鼠标不一定能够完成,所以Transact-SQL语言的重要程度不言而喻。在教学过程中笔者曾经无数次碰到这样的问题:在讲述某个原理并且用语言编程操作的时候,学生接受较快;上机实验的时候学生知道要做的事情却无从下手。仔细询问以后发现学生SQL语言基本单词拼写的熟练程度很低,相关语法囫囵吞枣地接受并不注意细节,导致最终程序运行不出来。
针对以上问题笔者推荐以下方法:
(1)归纳Transact-SQL单词库。对于重要的核心单词要让学生做到反复记忆。笔者曾经将Transact-SQL语言操作进行归纳,做到记忆目标清晰明了,在此基础上进行相应的语言功能拓展,便于学生进行知识梳理。针对遗忘特性,不定期对核心单词库中核心单词进行拼写、基本用法的抽查作为平时成绩录入系统。
(2)编辑病例程序汇编。典型程序要学生自己多动手编写,遇到程序错误要训练他们根据系统提示找出问题所在,将多年教学过程中积累的编程时学生容易出错的程序编辑成册,发给学生以做参考,如图1。
3 基于工作过程的数据库教学
自从姜大源教授提出基于工作过程课程体系开发这个在中国高职教育界具有影响力的教育方式以来,各个行业的高职教育改革藉此轰轰烈烈地展开,数据库课程的教学也不例外。
诚然,数据库课程本身是一门操作性非常强的学科,也能按照基于典型工作过程的教学方法进行教学并取得一定的效果。我们举办各种竞赛,把学生熟悉的生活数据如学生宿舍管理系统变为真实的数据库进行发布和管理,教学也因此取得比较好的效果。
但是面向工作过程的教学并不是万能药,因为数据库的服务面向各行各业、计算机水平层次不齐的各类用户,有的时候用户所提出的要求本身就是“非典型性”的,遇到这种情况学生就无法根据典型性工作过程迁移相关知识解决“非典型性”问题。因此,在教学中笔者不但要把握案例教学,还要强调工作情景教学,充分强调学生在压力下分析问题解决问题的能力。
在实验课堂上可对学生分组,使学生互相充当客户提出各种要求,使被要求学生在压力下解决问题。采用这种方式的好处是,容易让学生进入真实的工作状况,找出自己解决问题的方法。例如在对insert命令实验的时候有的同学就提出:“能不能将已存在的B表中的数据批量插入到A表当中?”这个知识点书本根本就没有提到,怎样完成这个非典型性任务?作为教师要引导学生在互联网特别是谷歌图书搜索、文献搜索、参数搜索等功能或SQL Server“帮助”中寻找答案:
INSERT INTO A
SELECT * FROM B
搜索、整理信息的过程就是针对问题背景进行知识迁移的过程,知识的迁移就能提高学生知识的熟练程度以及横向解决其他计算机课程的非典型性问题的能力。