摘要:數(shù)據(jù)庫技術(shù)課程專業(yè)術(shù)語多,理論豐富,應(yīng)用廣泛,教授和學(xué)習(xí)難度頗大。對其知識網(wǎng)絡(luò)進(jìn)行分析發(fā)現(xiàn),基于數(shù)據(jù)庫管理系統(tǒng)強(qiáng)大的功能和相關(guān)知識點(diǎn)呈現(xiàn)的復(fù)雜內(nèi)在聯(lián)系構(gòu)成了該課程復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu)。理清課程結(jié)構(gòu),將復(fù)雜的知識網(wǎng)絡(luò)簡化成兩條基于縱向和橫向線性結(jié)構(gòu)作為新的教學(xué)策略,降低學(xué)習(xí)難度,提高教學(xué)效果,增強(qiáng)學(xué)生的學(xué)習(xí)能力。
關(guān)鍵詞:知識網(wǎng)絡(luò);結(jié)構(gòu)分析;教學(xué)策略
中圖分類號:G642文獻(xiàn)標(biāo)識碼:A文章編號:1009-3044(2010)01-161-02
1 概述
數(shù)據(jù)庫技術(shù)誕生于20世紀(jì)60年代末期,逐步發(fā)展成為一種計算機(jī)應(yīng)用的專門技術(shù),而今更成為現(xiàn)代計算機(jī)環(huán)境中理論研究和實(shí)用技術(shù)的核心組成部分。學(xué)習(xí)數(shù)據(jù)庫課程的目的不僅要掌握其基本理論,而且要求能夠用用現(xiàn)有的DBMS和數(shù)據(jù)庫應(yīng)用系統(tǒng)開發(fā)工具解決實(shí)際問題。由于數(shù)據(jù)庫技術(shù)專業(yè)術(shù)語多,理論豐富,應(yīng)用廣泛,使課程的結(jié)構(gòu)呈現(xiàn)出發(fā)散狀態(tài),對教師授課和學(xué)生學(xué)習(xí)都提出了嚴(yán)峻的挑戰(zhàn)。
2 課程結(jié)構(gòu)分析
通過分析研究大量中外教材(見參考文獻(xiàn))可以看出,該課程容量大,內(nèi)容前后交錯,重疊呈現(xiàn),一方面根據(jù)基礎(chǔ)理論、基本設(shè)計和系統(tǒng)管理構(gòu)成了課程的縱向線條,另一方面在縱向線條的不同階段不少知識點(diǎn)有重疊和遞進(jìn),衍生出橫向線條,使得課程內(nèi)容形成復(fù)雜的知識網(wǎng)絡(luò)。
2.1 縱向結(jié)構(gòu)分析
該課程各種版本的教材中縱向結(jié)構(gòu)大體基本相同。典型的情況是通常將數(shù)據(jù)庫技術(shù)課程分成四大部分內(nèi)容,每部分再分成若干章節(jié)。分析我國經(jīng)典數(shù)據(jù)庫教材薩師煊、王珊教授的《數(shù)據(jù)庫系統(tǒng)概論》有以下的結(jié)構(gòu):
第一部分是數(shù)據(jù)庫的基礎(chǔ)理論,分成數(shù)據(jù)模型、關(guān)系數(shù)據(jù)庫基礎(chǔ)理論、數(shù)據(jù)庫標(biāo)準(zhǔn)語言SQL、數(shù)據(jù)庫安全性和數(shù)據(jù)庫完整性五章。
第二部分是數(shù)據(jù)庫的設(shè)計與應(yīng)用,分成關(guān)系數(shù)據(jù)理論、數(shù)據(jù)庫設(shè)計和數(shù)據(jù)庫編程三章。
第三部分是系統(tǒng)管理與維護(hù),分成關(guān)系查詢處理和查詢優(yōu)化、故障恢復(fù)技術(shù)和并發(fā)控制三章。
第四部分是數(shù)據(jù)庫新技術(shù),包括新型數(shù)據(jù)庫類別和高級應(yīng)用。
有些教材將關(guān)系查詢處理和優(yōu)化放到第一部分,作為數(shù)據(jù)庫的基礎(chǔ)理論,同時將數(shù)據(jù)庫的安全性和完整性放到第四部分,作為系統(tǒng)管理與維護(hù)的內(nèi)容。分析這些章節(jié)所表達(dá)的意義,這樣的安排都比較合理。
2.2 橫向結(jié)構(gòu)分析
該課程各種版本的教材中橫向結(jié)構(gòu)包括的知識點(diǎn)不盡相同,其中主要是由于國外的教材通常涉及到更多更細(xì)致的內(nèi)容,各知識點(diǎn)在不同章節(jié)呈現(xiàn)的深度廣度也不盡相同,分析典型的情況,包括的內(nèi)容主要有:
1) 數(shù)據(jù)模型中對關(guān)系及其相關(guān)概念的概念使用描述的方法;在關(guān)系數(shù)據(jù)庫理論中使用了關(guān)系代數(shù)的精確定義。
2) 數(shù)據(jù)完整性在關(guān)系數(shù)據(jù)庫理論中使用描述的方法介紹了關(guān)系的完整性;在SQL中不強(qiáng)調(diào)名稱地基于功能分類進(jìn)行了完整性實(shí)現(xiàn);在數(shù)據(jù)庫可完整性一章中理論和實(shí)現(xiàn)上均進(jìn)行了廣義的擴(kuò)充,系統(tǒng)管理和維護(hù)部分則把完整性作為其管理和維護(hù)內(nèi)容的重要一部分工作進(jìn)行了研究。
3) 關(guān)系數(shù)據(jù)庫理論中的數(shù)據(jù)操縱使用關(guān)系代數(shù)來完成;在實(shí)際的DBMS中使用SQL完成;在關(guān)系查詢的優(yōu)化中以關(guān)系代數(shù)的實(shí)現(xiàn)過程為依據(jù),以SQL的構(gòu)造為實(shí)現(xiàn)方法構(gòu)成了數(shù)據(jù)操縱從理論到實(shí)現(xiàn),從實(shí)現(xiàn)到優(yōu)化實(shí)現(xiàn)的完整研究。
4) 數(shù)據(jù)庫安全性與完整性有類似的安排。
5) 作為關(guān)系中總最要的概念之一的碼從數(shù)據(jù)模型一章開始引入;在關(guān)系數(shù)據(jù)庫理論中詳細(xì)描述碼及其相關(guān)概念的含義;在SQL部分使用語言實(shí)現(xiàn);在關(guān)系數(shù)據(jù)理論部分進(jìn)行展開,一方面基于關(guān)系理論進(jìn)行精確定義,一方面分析了各個不同碼的概念的區(qū)別和意義,對后期內(nèi)容中碼的應(yīng)用打下了堅實(shí)的理論和實(shí)現(xiàn)基礎(chǔ)。
以上分析是主要的例子但并不完全,但從以上的分析已足以見該課程內(nèi)容的豐富和繁雜。
3 課程教學(xué)策略與實(shí)踐
1) 將課程由復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu)理清為線條清晰的縱向結(jié)構(gòu)和橫向結(jié)構(gòu)。
2) 教學(xué)內(nèi)容的組織原則是以縱向結(jié)構(gòu)為主以橫向結(jié)構(gòu)為輔。即課程的講授基本不打亂教材的章節(jié)次序,但講課中滲透橫向結(jié)構(gòu)知識點(diǎn)的處理。
3) 分析并明確各橫向結(jié)構(gòu)知識點(diǎn)。整理出所有相關(guān)的知識點(diǎn),明確它們在本課程中不同章節(jié)處出現(xiàn)時所承擔(dān)的不同作用,所完成的不同功能。
4) 設(shè)計各橫向結(jié)構(gòu)知識點(diǎn)在各章節(jié)教學(xué)過程中的任務(wù)。安排各相關(guān)知識點(diǎn)在第幾章的授課中具體講什么內(nèi)容,講到什么程度。
5) 橫向結(jié)構(gòu)知識點(diǎn)講課過程中要進(jìn)行回溯。回溯要簡明扼要。學(xué)生回憶起學(xué)過的內(nèi)容,教師又同時不必消耗太多課時,溫故知新,溫故求新。
6) 橫向結(jié)構(gòu)知識點(diǎn)完成時進(jìn)行總結(jié),對進(jìn)一步應(yīng)用探索指明方向。
7) 明確學(xué)生在每部分學(xué)完需要掌握的知識點(diǎn)及程度并輔之以網(wǎng)絡(luò)課堂,其中基本資料至少包括課件、作業(yè)和答疑,以提供給學(xué)生及時和持續(xù)的指導(dǎo)。
4 效果分析
經(jīng)過幾年的實(shí)踐,數(shù)據(jù)庫技術(shù)課程的教學(xué)達(dá)到了以下效果:
1) 將課程復(fù)雜的網(wǎng)絡(luò)結(jié)構(gòu)簡化成縱向和橫向兩條線性結(jié)構(gòu),學(xué)生的學(xué)習(xí)由難趨易,明顯降低了課程難度。知識點(diǎn)有打碎有融合。打碎是小化知識點(diǎn),降低難度,融合是為了知識點(diǎn)的融會貫通和有效應(yīng)用。
2) 將數(shù)據(jù)庫理論和應(yīng)用相互促進(jìn)。橫向結(jié)構(gòu)保證知識點(diǎn)既在理論部分分析討論又在應(yīng)用部分基于某種具體的DBMS進(jìn)行實(shí)現(xiàn),知其然知其所以然,增強(qiáng)了學(xué)生學(xué)習(xí)的興趣。
3) 實(shí)現(xiàn)了知識的順利遷移。數(shù)據(jù)庫理論是廣譜的通用的知識點(diǎn),這種DBMS的功能這樣實(shí)現(xiàn),另外的DBMS勢必主要也包括了這樣的內(nèi)容,掌握了理論將方便學(xué)習(xí)和移植,把學(xué)習(xí)一個DBMS的方法遷移到另一個不同的DBMS上去。這個在學(xué)生畢業(yè)設(shè)計中得到了明顯體現(xiàn)。課程實(shí)驗(yàn)使用SQL Server環(huán)境,畢業(yè)設(shè)計使用 Oracle 或 Mysql 或 DB2 等,通過自學(xué),學(xué)生們順利完成了任務(wù)。
4) 學(xué)生掌握了一種新的學(xué)習(xí)方法,從而增強(qiáng)了自主學(xué)習(xí)能力。沿著教材的縱向結(jié)構(gòu)學(xué)習(xí)是一種本能,發(fā)現(xiàn)知識的橫向結(jié)構(gòu)、提取它,然后以此掌握知識的內(nèi)涵并應(yīng)用于實(shí)踐則進(jìn)入了學(xué)習(xí)的更高一層境界。這種能力,可以用于這門課程,當(dāng)然也可以用于其它課程;可以用于學(xué)習(xí)功課,當(dāng)然也可用于應(yīng)用實(shí)踐。
參考文獻(xiàn):
[1] 王珊,薩師煊.數(shù)據(jù)庫技術(shù)[M]4版. 北京:高等教育出版社,2006.5.
[2] 黃德才.數(shù)據(jù)庫技術(shù)及其應(yīng)用教程[M]2版.北京:科學(xué)出版社,2006.8.
[3] C.J.Date. 數(shù)據(jù)庫系統(tǒng)導(dǎo)論(An Introduction to Database Systems)(Seventh Edition)[M]. 北京:機(jī)械工業(yè)出版社,2003.
[4] Abraham Silberschatz, 等. 數(shù)據(jù)庫系統(tǒng)概念(Database System Concepts)(Fifth Edition)[M]. 北京:機(jī)械工業(yè)出版社,2008.
[5] Patrick O’Neil,等. 數(shù)據(jù)庫技術(shù)編程與性能(Database Principles, Programming and Performance)(Second Edition)[M]. 北京:機(jī)械工業(yè)出版社,2006.
[6] 葉小平, 湯庸,等. 數(shù)據(jù)庫系統(tǒng)基礎(chǔ)教程[M]. 北京:清華大學(xué)出版社,2007.
[7] 施伯樂,丁寶康,等. 數(shù)據(jù)庫教程[M]. 電子工業(yè)出版社,2004.
[8] 陳志泊.數(shù)據(jù)庫技術(shù)及應(yīng)用教程[M]. 北京:人民郵電出版社,2002.
[9] 何玉潔.數(shù)據(jù)庫技術(shù)與應(yīng)用教程[M]2版.北京: 機(jī)械工業(yè)出版社,2007.
[10] 苗雪蘭,劉瑞新,等.數(shù)據(jù)庫技術(shù)及應(yīng)用教程[M]3版. 北京:機(jī)械工業(yè)出版社,2007.