摘要:本文對(duì)數(shù)據(jù)庫(kù)原理課程教學(xué)的現(xiàn)狀進(jìn)行了分析,并根據(jù)筆者自身的教學(xué)實(shí)踐,針對(duì)數(shù)據(jù)庫(kù)原理教學(xué)的特征提出了教學(xué)和實(shí)踐相結(jié)合,課程設(shè)計(jì)跟進(jìn),實(shí)例導(dǎo)學(xué)等課程建設(shè)方面的改革措施。
關(guān)鍵詞:數(shù)據(jù)庫(kù)原理;教學(xué);實(shí)踐
中圖分類號(hào):G642文獻(xiàn)標(biāo)識(shí)碼:B
1引言
數(shù)據(jù)庫(kù)原理課程是電子信息專業(yè)的必修課程,也是管理信息專業(yè)的必修課程。大量的其他工科專業(yè)如土木、機(jī)械等也開設(shè)有數(shù)據(jù)庫(kù)原理的選修課程??梢哉f(shuō),“數(shù)據(jù)庫(kù)原理”是系統(tǒng)開發(fā)的基礎(chǔ)。但是筆者在指導(dǎo)學(xué)生畢業(yè)設(shè)計(jì)時(shí)發(fā)現(xiàn),學(xué)生對(duì)于這門課程學(xué)習(xí)存在概念混淆,缺乏感性認(rèn)識(shí),動(dòng)手能力差等情況。筆者根據(jù)多年在該課程的教學(xué)實(shí)踐,在教學(xué)過(guò)程中不斷探討,以取得更好的教學(xué)效果,教學(xué)內(nèi)容和教學(xué)方法的探討。
2數(shù)據(jù)庫(kù)系統(tǒng)總體結(jié)構(gòu)
數(shù)據(jù)庫(kù)原理這門課程涉及到數(shù)據(jù)庫(kù)原理、數(shù)據(jù)庫(kù)應(yīng)用和數(shù)據(jù)庫(kù)設(shè)計(jì)三方面的內(nèi)容,它們彼此關(guān)聯(lián)而又各自有著自己的側(cè)重點(diǎn),包含的知識(shí)點(diǎn)較多,并要求學(xué)生具有一定的動(dòng)手能力。在學(xué)習(xí)中這些理論知識(shí)是很繁瑣的,但又是整個(gè)數(shù)據(jù)庫(kù)應(yīng)用的基石,如果不能條理清晰的掌握好這些原理,并理解數(shù)據(jù)庫(kù)應(yīng)用、原理和設(shè)計(jì)三方面的內(nèi)容是很難進(jìn)行很好的數(shù)據(jù)庫(kù)應(yīng)用的設(shè)計(jì)的。在這門課程的講述中我們以圖1作為重點(diǎn),著重講述數(shù)據(jù)庫(kù)應(yīng)用、數(shù)據(jù)庫(kù)原理、數(shù)據(jù)庫(kù)三者間的關(guān)系,這是初學(xué)者特別容易混淆的地方。通過(guò)對(duì)該圖的講解可以將數(shù)據(jù)庫(kù)應(yīng)用、數(shù)據(jù)庫(kù)原理和數(shù)據(jù)庫(kù)設(shè)計(jì)之間的關(guān)系,數(shù)據(jù)如何通過(guò)B/S模式或C/S模式進(jìn)行傳遞,RDBMS系統(tǒng)是怎樣的一個(gè)軟件基本功能如何,數(shù)據(jù)庫(kù)的三級(jí)模式的基本概念,同時(shí)對(duì)于數(shù)據(jù)庫(kù)應(yīng)用的開發(fā)有一個(gè)基本的了解。所以,該圖的透徹講解對(duì)于整個(gè)數(shù)據(jù)庫(kù)原理課程的學(xué)習(xí)有高屋建瓴,統(tǒng)領(lǐng)全篇的作用。
在講解完數(shù)據(jù)庫(kù)系統(tǒng)總體結(jié)構(gòu)圖之后,我們打開了用PB用開發(fā)的一個(gè)學(xué)生很熟悉的應(yīng)用程序?qū)W籍管理系統(tǒng),解釋在這樣一個(gè)系統(tǒng)中各個(gè)軟件的作用,它們和數(shù)據(jù)庫(kù)系統(tǒng)總體結(jié)構(gòu)圖的對(duì)應(yīng)關(guān)系,以及簡(jiǎn)單的開發(fā)流程。然后別以交互式方式和從應(yīng)用程序中分別修改相應(yīng)的值。至此,數(shù)據(jù)庫(kù)系統(tǒng)總體結(jié)構(gòu)講解完畢。
3強(qiáng)調(diào)關(guān)系數(shù)據(jù)庫(kù)原理的講授
關(guān)系數(shù)據(jù)庫(kù)的原理在數(shù)據(jù)庫(kù)原理課程分為三大主要部分:關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)、數(shù)據(jù)庫(kù)的保護(hù)和關(guān)系數(shù)據(jù)庫(kù)設(shè)計(jì)理論。因?yàn)檫@些原理本身枯燥、知識(shí)點(diǎn)多、可操作性弱一些,所以不容易引起學(xué)生興趣和重視。在關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)部分重點(diǎn)講解在關(guān)系模型當(dāng)中如何體現(xiàn)數(shù)據(jù)之間的關(guān)系,什么是外健,什么是主健,什么是主健和外健之間的參照關(guān)系。為了使學(xué)生深刻理解外健對(duì)主健的參照關(guān)系以及主健對(duì)外健的級(jí)聯(lián)(或拒絕)刪除或修改的關(guān)系,我們?cè)O(shè)計(jì)了基于動(dòng)畫的教案,生動(dòng)地通過(guò)學(xué)籍管理的具體例子講解。并介紹如何實(shí)現(xiàn)主外健之間的約束:用PRIMARY KEY和FOREIGN KEY的方式,以及用觸發(fā)器的形式,并在此引入觸發(fā)器的概念。在介紹FOREIGN KEY語(yǔ)句中強(qiáng)調(diào),REFERENCE語(yǔ)句實(shí)現(xiàn)的是含有外健的從表對(duì)主表的參照作用,而CASCADE語(yǔ)句實(shí)現(xiàn)的是含有主健的主表對(duì)從表的級(jí)聯(lián)作用,并且外健FOREIGN KEY定義在含有外健的表上。數(shù)據(jù)庫(kù)保護(hù)內(nèi)容的講解對(duì)于數(shù)據(jù)庫(kù)應(yīng)用開發(fā)人員和數(shù)據(jù)庫(kù)系統(tǒng)的管理員比較重要,它可以使數(shù)據(jù)庫(kù)的使用和開發(fā)者更加明確數(shù)據(jù)庫(kù)管理系統(tǒng)工作的原理,在這一部分可以借助多媒體教學(xué)的特征進(jìn)行,并且在MICROSOFT SQL SERVER上進(jìn)行實(shí)際的演示相關(guān)操作。對(duì)于關(guān)系數(shù)據(jù)庫(kù)設(shè)計(jì)理論,這是數(shù)據(jù)庫(kù)原理當(dāng)中最為費(fèi)解而對(duì)于數(shù)據(jù)庫(kù)的設(shè)計(jì)者又極為重要的理論知識(shí)和工具。首先,講解清楚為什么需要范式,異常的關(guān)系存在哪些問(wèn)題。在介紹1NF~5NF的過(guò)程中結(jié)合范式分解的理論講解,最重要的是在講授過(guò)程引入實(shí)例進(jìn)行講解,使學(xué)生深刻理解范式理論及其應(yīng)用。最后針對(duì)范式的分解,給出典型習(xí)題,讓學(xué)生在獨(dú)立思考中鞏固學(xué)習(xí),理解什么是范式分解的“一事一地”原則。
4實(shí)踐環(huán)節(jié)的安排
數(shù)據(jù)庫(kù)原理課程是理論性和實(shí)踐性相結(jié)合的課程。在課程當(dāng)中我們講解了SQL語(yǔ)言,講解了數(shù)據(jù)庫(kù)管理系統(tǒng)的安全性、完整性、并發(fā)控制和故障恢復(fù)等知識(shí)。為了加深對(duì)于以上知識(shí)的理解和培養(yǎng)實(shí)際動(dòng)手能力,我們安排了32學(xué)時(shí)的上機(jī)實(shí)踐課程。針對(duì)我們講述的要點(diǎn)設(shè)計(jì)相應(yīng)的題目,從而使學(xué)生通過(guò)MICROSOFT SQL SERVER這樣一個(gè)軟件具體的操作SQL語(yǔ)言,實(shí)踐對(duì)于DBMS的管理。更為重要的是,對(duì)于電子信息類專業(yè)的學(xué)生,我們?cè)跅l件允許的情況下安排了分小組的簡(jiǎn)單數(shù)據(jù)庫(kù)應(yīng)用設(shè)計(jì)題目的課程設(shè)計(jì),更進(jìn)一步的將整個(gè)課程的知識(shí)點(diǎn)的學(xué)習(xí)整合起來(lái),起到了良好的效果。
5專業(yè)不同講授重點(diǎn)不同
對(duì)于工商會(huì)計(jì)專業(yè)或其他非電子信息類專業(yè)的學(xué)生在講解中我們強(qiáng)調(diào)兩方面,一是理解,二是實(shí)踐。理解數(shù)據(jù)庫(kù)應(yīng)用、數(shù)據(jù)庫(kù)原理和數(shù)據(jù)庫(kù)設(shè)計(jì)之間的關(guān)系;理解通過(guò)概念模型ER圖所要表達(dá)的含義,如何從現(xiàn)實(shí)語(yǔ)義中抽取出ER模型,ER模型根據(jù)怎樣的轉(zhuǎn)換規(guī)則轉(zhuǎn)換為關(guān)系模型。在講述各個(gè)知識(shí)點(diǎn)之后,通過(guò)一個(gè)具體的倉(cāng)庫(kù)管理的例子將以上過(guò)程串接起來(lái)。因?yàn)閷?duì)于非電子信息類專業(yè)的學(xué)生將來(lái)的工作更多可能是作用應(yīng)用程序的使用者而非開發(fā)者;最后是著重理解數(shù)據(jù)庫(kù)用開發(fā)的過(guò)程,理解生命周期法的含義,樹立規(guī)范化軟件工程的概念,理解在各個(gè)設(shè)計(jì)階段的過(guò)程、工具和成果。在實(shí)踐環(huán)節(jié),我們著重講解SQL語(yǔ)言的使用,并結(jié)合上機(jī)實(shí)踐,使學(xué)生能夠較熟練使用SQL語(yǔ)言。
5簡(jiǎn)述數(shù)據(jù)庫(kù)相關(guān)的技術(shù)
在這門課程的結(jié)束時(shí),我們專門設(shè)置一講來(lái)講解與數(shù)據(jù)庫(kù)相關(guān)的技術(shù)如數(shù)據(jù)庫(kù)倉(cāng)庫(kù)、數(shù)據(jù)挖掘、web數(shù)據(jù)庫(kù)技術(shù)、新的面向?qū)ο髷?shù)據(jù)模型、嵌入式數(shù)據(jù)庫(kù)系統(tǒng)、多媒體數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)存儲(chǔ)技術(shù)等知識(shí)。以開闊學(xué)生的視野,激發(fā)學(xué)習(xí)熱情。
6結(jié)論
總之,通過(guò)實(shí)踐與理論相結(jié)合,課程設(shè)計(jì)跟進(jìn),動(dòng)畫教學(xué)簡(jiǎn)化教學(xué)難度,從實(shí)例中學(xué)習(xí)理論知識(shí),因?qū)I(yè)而施教的教學(xué)方式在數(shù)據(jù)庫(kù)原理的教學(xué)中起到了良好的效果,為畢業(yè)設(shè)計(jì)等后續(xù)實(shí)踐課程的奠定了堅(jiān)實(shí)的基礎(chǔ)。
參考文獻(xiàn):
[1] 陶宏才. 數(shù)據(jù)庫(kù)原理及設(shè)計(jì)(第2版)[M]. 北京:清華大學(xué)出版社,2007.
[2] Raghu Ramakrishman, Johannes Gehrke. DATABASE MANAGEMENT SYSTEMS (Second Edition)[M]. 北京:清華大學(xué)出版社,2000.