摘 要: 本文針對目前數據庫原理教學中存在的一些問題,從課程的內容編排、教學方法和實踐環節三個關鍵方面進行了教學改革探討。
關鍵詞: “數據庫原理”課程 教學內容 理論教學 實踐環節
1.引言
數據庫技術是計算機科學技術中發展最快的領域之一,也是應用最為廣泛的技術之一,它已經成為計算機信息系統和應用系統的核心技術和重要基礎。經過幾十年的發展,數據庫技術已經形成了比較完整的理論體系和廣泛的應用系統。
“數據庫原理”課程作為大學本科計算機專業的一門專業基礎必修課,主要講授數據庫的基本原理和應用設計方法,理論性強、應用廣泛。通過該課程的學習,如何使學生既能掌握數據庫技術的基本概念和理論,又能掌握數據庫的設計和應用方法,更好地勝任今后的實際工作,是所有任課教師都要重視的問題。目前,我國高校計算機及信息技術等相關專業大都開設了數據庫原理這門課程,教學內容和教學方法基本相似,并且大都存在著一些類似的問題。針對目前數據庫原理教學中存在的一些問題,本文對該課程的內容組織、教學方法和實踐環節幾個關鍵問題進行研究探討。
2.優化教學內容的組織結構
教學內容的選擇和知識模塊的組織方式是課堂教學的一個重要方面,直接影響著教學效果。教學內容是培養目標、教學計劃和課程體系的完整體現,也是課堂教學得以實施的基本保證,而知識模塊的組織方法則是先進教學思想的體現,它對于教學方法和教學手段的創新,以及提高教學質量都有著非常重要的促進作用。
傳統的數據庫原理課程的教學內容主要以關系數據庫為基礎、數據庫管理系統為中心,介紹關系系統的基本原理,理論教學始終放在首位,很少涉及具體的應用,學生在最初的學習過程中因為沒有實踐的心得體會而很難理解那些抽象的概念和理論,并進一步導致學生被動乏味、興趣低下。進入實踐階段后,由于理論基礎不扎實,學生常會感到無從下手,致使實踐和理論之間嚴重脫節,更進一步挫傷了學生學習的積極性,影響了教學效果。
鑒于內容編排上的問題,我們在介紹完數據庫的一些基本概念之后,即對照著某一具體的關系數據庫系統,如SQL SERVER 2005,介紹關系模型、關系代數和關系數據庫語言SQL等內容,同時進行上機實踐,這樣學生能較早對關系數據庫有個感性認識,較好地掌握SQL的語法和功能,并鍛煉其實際操作能力。接下來,針對某一具體數據庫應用系統的需求,如圖書管理系統,講授關系數據庫的規范化理論和設計方法。這樣讓課程內容的組織始終與具體應用相結合,不僅使很多抽象難懂的概念更加具體和容易理解,而且調動了學生學習的興趣和積極性。
3.從需求和問題出發進行理論教學
現在很多數據庫原理教材都是從理論出發,先講解一大堆的理論,然后才談及實踐。由于數據庫的基本原理、概念和技術的理論性強、抽象度高,因此這樣常會導致學生在最初的理論知識學習階段感覺被動乏味、興趣低下、理解困難,一些學生甚至會自暴自棄。并且,這種用理論引出實踐的方法也不符合人們認知世界的規律。馬克思主義的實踐論和認知論告訴我們,理論源于實踐,又反過來指導實踐,脫離實踐的理論是空洞無力的,“實踐—理論—再實踐—再理論”無限循環往復才是人類認知世界的基本過程。因此,從實踐引出理論會使理論知識更容易理解,能夠讓學生首先明白學習這些理論的實際意義,也更容易激發學生的積極性和主動性。
為了幫助學生理解抽象的理論,激發興趣,我們采取了下面的方法。
(1)課程第一堂課,先聯系生活實際,談談我們生活中哪些地方離不開數據庫,如:銀行儲蓄,火車飛機訂票,學生的學籍管理,人事工資管理,等等。讓學生從感性上認識到數據庫和我們現代生活的密切相關性。接著引出一些相關概念,如:信息、數據、數據庫、數據庫管理系統等,并用實例和類比的方法講解這些概念及其相互關系。有實際生活知識做背景,這些概念理解起來也就更容易了。
(2)在以關系數據庫為例講解數據庫的基本概念、模型和技術時,選擇一個主流的大型數據庫系統作為理論教學背景和實踐教學平臺,如SQL Server 2005。在理論教學講授SQL語句時,如果干巴巴地列出語句格式和要注意的事項,學生必定感到枯燥乏味。那么,可以在講解SQL語句及其使用格式的同時,在SQL Server 2005環境下輸入SQL語句,然后讓學生觀察結果。如果語句出錯,則引導學生思考原因:為什么出錯?是格式錯誤,還是邏輯錯誤?如果有條件,也可以在實驗室進行這部分內容,邊講解邊實驗。這樣不僅調動了學生學習的積極性,而且加深了學生對基本概念和理論的理解。
(3)基于問題驅動的理論教學法。在講數據庫設計的規范化理論一章時,很多學生不明白學習這些形式化的理論有什么用。因此,在講這一章之前,應先把問題提出來,比如,如何設計一個數據庫的關系模式,你設計的這個關系模式是好是壞?衡量的標準是什么?為什么?讓學生知道學習這章內容就是為解決這些問題的,有其必要性和重要性,從而做到心中有數。接下來講解相關理論,以及這些理論是如何解決提出的問題的時候,學生就可以有的放矢地進行學習了。
4.重視實踐環節,加強應用能力的培養
數據庫原理是一門應用性很強的課程,實踐環節直接關系到整個課程的教學效果。目前在數據庫原理的教學中普遍存在一定的誤區;過分強調原理和知識的完備性和系統性,而忽視了實踐教學、實驗方案在培養學生實踐能力和創新能力中的重要作用,認為既然是原理課,不論對什么學生都應著重講解理論知識,實踐環節的學時偏少,忽視了學生實際應用能力的培養。此外講課也大多是填鴨式的教學,在學生自主學習和創新能力的培養方面還很欠缺,學生學習狀態不佳,學習目的不明確,導致學習效果不理想。
目前大部分院校本科生學習該門課程的目的是為了應用。對于這樣的學生,數據庫的實踐教學尤為重要,任課教師更應該在實踐教學上下功夫,讓學生能夠真正把所學理論知識和實踐聯系起來,為日后開發數據庫應用系統奠定基礎。
由于學時的限制,我們在課程實驗環節上做了精心設計和周密安排。除了與理論課相配合的實驗課外,我們還在課程結束后的小學期設置了相應的課程設計。
(1)通過基礎實驗幫助學生理解和鞏固理論知識
教學過程中課堂教學和基礎實驗需同步進行。學生只有通過上機操作才能真正理解所學,消化課堂上的理論知識,這一點對數據庫課程也尤為重要。為提高上機質量,教師應首先做好實驗課和理論課的銜接關系,實驗課最好和相應的理論課同步進行,否則很難達到好的效果。我們按照教學順序編寫了實驗指導書,讓學生設計SQL語句并通過上機來驗證。結合課程內容,我們設置的實驗如下。
●建立數據庫及基本表:學習使用關系數據庫SQL SERVER 2005,并練習數據庫的建立和刪除、基本表的建立和修改、數據的輸入。
●數據更新:使用INSERT、UPDATE、DELETE語句進行數據更新。
●數據查詢:使用SELECT語句進行數據的查詢。
●視圖的創建與修改:使用CREATE、DROP語句創建和刪除視圖,使用INSERT、UPDATE、DELETE語句更新視圖,體會更新視圖的前提條件。
●數據完整性:使用PRIMARY KEY、FOREIGN KEY REFERENCES、NOT NULL、UNIQUE、CHECK等關鍵字定義完整性約束,并通過相應操作驗證這些完整性約束,體驗完整性約束的作用。
(2)通過課程設計培養學生的綜合應用能力
為了增強學生的綜合運用能力,在學完數據庫原理課程之后的小學期我們開設了相應的課程設計。課程設計的任務是讓學生從實際生活中的數據庫應用系統出發,完成一個實際的、基于C/S或B/S的數據庫應用系統設計的全過程。包括:需求調查、數據庫設計、數據庫建立、數據輸入、應用系統的設計和開發,用戶界面的設計和實現等。具體要求如下:
●分組:將學生分成小組,每組人員為4—5人,組長1名,負責任務分工和總體協調。
●分工:每名學生擔任不同的角色,包括系統分析、系統設計人員、數據庫設計人員、應用系統開發人員、測試人員等,分工協作、共同完成設計和開發任務,從而培養團隊精神。
●開發數據庫應用系統:選擇一個合適的DBMS產品,選擇合適的應用開發工具,按照設計的結果建立數據庫,開發應用系統,輸入數據并調試運行所開發的系統。
●實驗報告:寫出完整的實驗報告,包括:需求調查報告、系統分析報告、數據庫設計報告、應用系統設計報告、數據庫實施計劃、系統測試計劃、系統測試報告、用戶使用手冊等文檔。
●考查形式:向教師和其他小組運行演示開發的數據庫應用系統,提交所有文檔。
課設任務書后面可附上參考題目,以供學生選擇,如:圖書管理系統、網上書店系統、加油站管理系統、醫院住院管理系統、股票交易系統、人力資源管理系統、倉庫管理系統、企業工資管理系統等。
課設小組完成設計方案后,組織全班學生對每個小組的設計方案進行討論和評價,各小組根據大家的意見進行修改,通過后再進行代碼的編寫。整個系統完成后,每組派代表演示本組所開發的系統。通過集體討論,大家可以互相學習,交流開發過程中的收獲和體會。
數據庫課程設計不僅要用到數據庫的知識,而且要用到編程和軟件工程方面的知識。教師應該讓學生充分發揮自己的積極性和主觀能動性,一方面應注重學生獨立解決問題能力的培養,另一方面還要注重培養學生的團隊合作精神。在整個課程設計中,要以學生為主體,充分發揮教師的引導作用,教師不僅要指導學生學會查找資料,更重要的是培養學生發現問題、分析問題和解決問題的能力。
5.結語
要提高數據庫原理的教學效果,必須不斷優化教學內容,積累實踐經驗,改進教學方法和手段,構建科學、合理的教學體系。由于數據庫技術在不斷發展,知識在不斷更新,教師觀念也必須不斷更新,教師應從教學內容、教學方法和實踐等方面認真思考,銳意改革,為社會培養出更多具有創新能力的數據庫應用人才。
參考文獻:
[1]崔巍等.淺談數據庫課程實踐教學.計算機教育,2007.11.
[2]黃德才等.“數據庫原理及其應用”課程知識模塊組織和教學實踐,中國科教創新導刊,2007,(471).
[3]施伯樂,丁??档龋瑪祿煜到y教程(第2版).北京:高等教育出版社,2003.8.
[4]王珊,薩師煊.數據庫系統概論(第四版)[M].北京:高等教育出版社,2007.11.
基金項目:北京工業大學教育教學研究項目(項目編號:025000514106)資助。