胡珊珊 喬 靜 屈志強
摘要 數(shù)據(jù)庫原理是計算機專業(yè)和信息專業(yè)的專業(yè)基礎(chǔ)課程,對于學生今后從事數(shù)據(jù)庫、軟件開發(fā)等相關(guān)工作具有重要意義。從教學內(nèi)容、教學方法和考核機制3個方面對數(shù)據(jù)庫教學進行改革和探索,收到較好的教學效果。
關(guān)鍵詞 數(shù)據(jù)庫;教學改革;案例教學;任務驅(qū)動教學
中圖分類號:G642.0 文獻標識碼:B 文章編號:1671-489X(2009)30-0051-02
Teaching Reform and Practice of Database Principle//Hu Shanshan, Qiao Jing, Qu Zhiqiang
Abstract Database principle is a special and basic curriculum for students majored in computer and information specialty. It has great importance for students to engage in jobs such as database and software development in the future. In this paper, a reform and practice for database teaching is carried out in three areas: course content, teaching method and examination mechanism, and have received preferable teaching effect.
Key words database; teaching reform; case teaching; task-driving teaching
Authors address Information Engineering College of Jining Medical University, Rizhao, Shangdong, 276826, China
數(shù)據(jù)庫技術(shù)是數(shù)據(jù)管理的最新技術(shù),是計算機科學中的一個重要分支。隨著科技的不斷進步,數(shù)據(jù)庫技術(shù)已滲透到社會的各個領(lǐng)域,得到廣泛應用和迅速發(fā)展,成為信息技術(shù)的核心和基礎(chǔ)。近年來,在全國各高等院校中,數(shù)據(jù)庫原理課程已經(jīng)成為計算機專業(yè)、信息專業(yè)等專業(yè)開設的專業(yè)基礎(chǔ)課程。學好這門課,對于學生今后從事數(shù)據(jù)庫、軟件開發(fā)等相關(guān)工作具有重要意義。為了提高數(shù)據(jù)庫原理的教學效果,筆者從教學內(nèi)容、教學方法和考核機制等方面進行改革和探索。
1 教學內(nèi)容
數(shù)據(jù)庫原理的教學分為理論教學、實驗教學和課程設計3個模塊。理論教學講解本課程的基本概念和基本原理;實驗教學提高學生的實際操作能力;課程設計培養(yǎng)學生綜合運用知識的能力,提高學生的創(chuàng)造力。3個模塊循序漸進,相輔相成,共同構(gòu)建了數(shù)據(jù)庫原理教學的完整體系。
1.1 理論教學數(shù)據(jù)庫原理是一門理論性很強的課程,理論教學具有舉足輕重的地位。理論教學講解本課程的基本原理、概念及主要技術(shù)。
數(shù)據(jù)庫的理論知識只有與具體的DBMS(數(shù)據(jù)庫管理系統(tǒng))結(jié)合才能應用于實際,因此在授課過程中應結(jié)合具體的DBMS來講解。目前流行的DBMS有SQL Server、Oracle、MySql等,由于SQL Server功能強大且易于使用,因此選用SQL Server作為后臺講解數(shù)據(jù)庫基礎(chǔ)知識。在授課過程中給學生補充SQL Server的基礎(chǔ)知識,如SQL Server使用環(huán)境、物理數(shù)據(jù)庫的建立等,使學生能順利地將數(shù)據(jù)庫原理的知識應用到實踐中。
數(shù)據(jù)庫原理教學在把握教材主流內(nèi)容的同時,也要介紹數(shù)據(jù)庫技術(shù)的新進展,比如ADO技術(shù),給學生介紹ADO的3大對象(Connection、Command、Recordset)以及各對象的常用屬性和方法;最后簡單介紹在實際編程過程中使用ADO存取數(shù)據(jù)的步驟,使學生對ADO編程有一個整體的、形象的了解。另外,由于在開設數(shù)據(jù)庫原理課程之前,學校已經(jīng)開設相關(guān)的程序設計課程,如JAVA、VB、Delphi等,因此學生已經(jīng)具備一定的編程能力。但在教學過程中發(fā)現(xiàn)學生在應用程序與數(shù)據(jù)庫的連接這一環(huán)節(jié)經(jīng)常出問題,因此在理論教學過程中可補充相關(guān)內(nèi)容。
1.2 實驗教學實驗教學是數(shù)據(jù)庫原理課程教學的重要環(huán)節(jié)。理論的知識要在實驗中檢驗后才能真正為學生所理解和掌握,變成自己的東西,否則就只能是“紙上談兵”。
實驗教學應與理論教學緊密結(jié)合。實驗內(nèi)容的設計要合理,既要加深學生對理論知識的理解,又要提高學生的實際操作能力和解決問題的能力。為此,精心設計與理論教學相對應的10個獨立實驗,從熟悉SQL Server環(huán)境到數(shù)據(jù)庫的備份和還原,實驗內(nèi)容基本上涵蓋了教材各個章節(jié)的內(nèi)容。教師在課堂上明確指定實驗項目,讓學生課下有所準備,上實驗課時能夠做到心中有數(shù),目的明確。學生在上機過程中可能會遇到各種問題,所以教師對學生的指導是非常必要的,對于上機過程中學生普遍存在的一些問題應進行統(tǒng)一講解。
1.3 課程設計 課程設計是教學過程中的最后一個模塊,它是對數(shù)據(jù)庫原理課程所學知識的綜合應用。以學生熟悉的學生成績管理系統(tǒng)為題,讓學生協(xié)作完成一個小型數(shù)據(jù)庫管理系統(tǒng)的開發(fā)工作,包括需求分析、概念結(jié)構(gòu)設計、邏輯結(jié)構(gòu)設計、物理結(jié)構(gòu)設計、編寫應用程序、存取數(shù)據(jù)庫等一系列的流程。開發(fā)過程涉及數(shù)據(jù)庫課程中方方面面的知識,因此學生對所學知識的掌握程度直接決定了課程設計的效果。
另一方面,通過一個具體系統(tǒng)的設計與實現(xiàn),能使學生更深入地理解本課程的基本概念、知識和技術(shù)。比如在學生信息查詢中要求實現(xiàn)模糊查詢的功能,有些學生在處理這個問題時不知從何下手。其實方法很簡單,只要在SELECT查詢語句中使用LIKE謂詞和通配符就可以實現(xiàn)。學生在解決這個問題后會對LIKE謂詞有更深刻的認識。不僅如此,課程設計的綜合實驗使學生有機會將數(shù)據(jù)庫原理與程序設計、軟件工程等多門課程的知識綜合在一起,融會貫通,真正體會到計算機各門課程之間內(nèi)在的本質(zhì)聯(lián)系。
2 教學方法
在教學過程中,合理運用各種教學方法和手段,采用案例教學、任務驅(qū)動教學等教學方法,讓學生學得輕松,學得愉快,能充分發(fā)揮學生的創(chuàng)造力,提高教學效果。
2.1 案例教學案例教學,就是在教師的引導下,組織學生對典型案例進行分析和討論,讓學生在分析討論的過程中自己抽象和總結(jié)出問題的本質(zhì)以及解決問題的思路和方法。案例教學使學生主動參與學習,由被動接受知識轉(zhuǎn)變?yōu)橹鲃犹剿髦R,有助于學生對基本原理和概念的理解。
案例資料的設計是案例教學的關(guān)鍵。所用案例既要有代表性,能夠說明問題的本質(zhì),又要容易為學生理解。因此,教師平時要多花工夫設計好的案例,才能真正發(fā)揮案例教學的效用,提高教學效果。例如在講解關(guān)系間的參照完整性規(guī)則及外碼的概念時,就事先引入3個表(學生表、課程表和學生選課表),并給出各個表的部分數(shù)據(jù)。然后由學生對這3個表進行分析和討論,找出表間的參照關(guān)系。在此基礎(chǔ)上,教師給出外碼以及參照完整性規(guī)則的相關(guān)概念,學生普遍感覺容易理解和接受。
多值依賴是一個比較抽象的概念,學生接受起來比較困難。因此,在講解多值依賴這個概念時,首先讓學生分析一個大家熟悉的關(guān)系模式“Teaching(C,T,B)”,其中C表示課程,T表示教員,B表示參考書。學生在分析該關(guān)系模式的3個屬性之間的關(guān)系時發(fā)現(xiàn):對于C的每一個值,有一組T值與之對應,而不論B取何值。這正是多值依賴的實質(zhì),在此基礎(chǔ)上給出“多值依賴”的概念。
綜上,在數(shù)據(jù)庫原理教學過程中采用案例教學是非常有效的,該方法通過一個個實例向?qū)W生清晰、生動地講述抽象難懂的知識,不僅提高學生的學習興趣,更培養(yǎng)學生的思維能力和創(chuàng)新意識,提高學生的綜合素質(zhì)。
2.2 任務驅(qū)動教學任務驅(qū)動教學法就是教師或?qū)W生根據(jù)教學要求提出“任務”,以完成一個個具體的“任務”為線索,把教學內(nèi)容巧妙地隱含在每個“任務”之中。學生和教師一起提出解決問題的思路和方法,在完成“任務”的過程中獲得知識。任務驅(qū)動教學法讓學生在“任務”的驅(qū)動下,展開學習活動,可以激發(fā)他們的求知欲,使其樂于學習、主動學習。
在講解規(guī)范化理論時,明確提出一個總的任務:針對一個具體的問題,應該如何構(gòu)造一個“好”的適合于它的數(shù)據(jù)模式,即構(gòu)造幾個關(guān)系模式,每個關(guān)系由哪些屬性組成。以一個學校數(shù)據(jù)庫為例,首先給出一個單一的關(guān)系模式:SLC(Sno,Sdept,Sloc,Cno,Grade)。對這一關(guān)系模式進行分析,可知該關(guān)系模式存在數(shù)據(jù)冗余、插入異常、刪除異常和更新異常等弊端。任務是對這個關(guān)系模式進行改造,消除這些弊端。在這個任務的驅(qū)動下,對關(guān)系模式SLC進一步分析,發(fā)現(xiàn)出現(xiàn)各種弊端的原因在于該模式上存在非主屬性Sdept、Sloc對碼的部分函數(shù)依賴。因此將SLC分解為2個關(guān)系模式“SC(Sno,Cno,Grade)”和“SL(Sno,Sdept,Sloc)”,消除部分函數(shù)依賴,從而在一定程度上減輕SLC關(guān)系中存在的各種問題。分解后得到的2個關(guān)系模式都屬于2NF,由此引出2NF的概念。接下來對“SL(Sno,Sdept,Sloc)”做進一步分析,發(fā)現(xiàn)仍然存在插入異常、刪除異常、修改復雜等問題,于是新的任務就是將SL關(guān)系模式改造為更合適的形式,在解決該任務的過程中進一步引入3NF的概念。
實踐證明,任務驅(qū)動教學法有利于提高學生的學習興趣、調(diào)動學生的學習積極性,取得較好的教學效果。
3 考核機制
隨著教學內(nèi)容和教學方法的改革,考核方式也應該作相應的調(diào)整,以適應新的教學模式。數(shù)據(jù)庫原理是一門理論與實踐結(jié)合性強的課程,單純的筆試不能真實地反映學生對這門課的掌握情況。部分學生的筆試成績非常好,對基本概念、基本原理都掌握得很牢,但實際動手能力卻很差,不能將所學知識應用于實踐。這明顯違背了數(shù)據(jù)庫原理的教學宗旨。因此,筆者認為合理的考核方式應該采取筆試成績、實驗成績和課程設計相結(jié)合的形式,筆試成績占70%,實驗成績占10%,課程設計占20%。通過這種理論與實踐相結(jié)合的考核方法,既促使學生掌握基本原理和概念,又能提高學生的動手實踐能力。
4 結(jié)束語
本文針對數(shù)據(jù)庫原理課程教學進行探索,提出教學改革的方案。在實際教學過程中對這些改革方案進行應用,收到較好的教學效果,學生不僅掌握了數(shù)據(jù)庫的基本原理和基本技術(shù),而且鍛煉了實際操作能力。當然,數(shù)據(jù)庫原理課程改革任重而道遠,需要不斷的探索創(chuàng)新。
參考文獻
[1]王珊,薩師煊.數(shù)據(jù)庫系統(tǒng)概論[M].第4版.北京:高等教育出版社,2006
[2]賈艷宇.《關(guān)系數(shù)據(jù)庫原理與應用》課程教學改革與實踐[J].中國電力教育,2008(10)
[3]周麗娟.數(shù)據(jù)庫教學體系改革與優(yōu)化[J].高教論壇,2009(1)
[4]錢雪忠.“數(shù)據(jù)庫原理及應用”課程教學實踐與探討[J].黑龍江教育:高教研究與評估,2008(Z2)