胡巧兒
(江蘇海事職業(yè)技術(shù)學院 江蘇 南京211170)
隨著計算機在各行各業(yè)的普及應用,數(shù)據(jù)庫技術(shù)已成為各種應用系統(tǒng)開發(fā)的重要基礎平臺和核心技術(shù)。 因此,《數(shù)據(jù)庫原理與應用》成為高職高專計算機專業(yè)一門非常重要的主干課程。
依據(jù)高職高專“實用為主,夠用為度”的教學原則,該課程主要由數(shù)據(jù)庫原理、設計和應用三個部分組成,重點是數(shù)據(jù)庫設計和數(shù)據(jù)查詢語句。
目前,高職高專《數(shù)據(jù)庫原理與應用》教材在內(nèi)容編排上一般都是先原理、后設計、再應用,孤立數(shù)據(jù)庫設計與數(shù)據(jù)庫原理各知識點的關(guān)聯(lián),抽象且不易理解。 盡管教師花費不少課時講解, 學生仍普遍反應原理抽象,大都不能深刻領(lǐng)會理論對實踐的指導作用。在學生以后的系統(tǒng)開發(fā)實踐中, 對數(shù)據(jù)庫設計這一環(huán)節(jié)常常無從下手,茫然無措。 實踐證明,學生要想真正掌握如何做,還應知道必要的“為什么”。只有學好必要的數(shù)據(jù)庫基本理論知識,學生在日后的開發(fā)及應用中才能應對自如。
教師感覺原理難教,學生感覺原理難學。 由此,市場上甚至出現(xiàn)了不少跳過原理直接以一個數(shù)據(jù)庫管理系統(tǒng)平臺講應用的高職教材,也引發(fā)許多關(guān)于數(shù)據(jù)庫課程教學的討論并屢見于期刊中,但都局限于討論該課程的教學手段與教學方法,對如何重點解決“數(shù)據(jù)庫原理內(nèi)容教學難”的問題鮮有討論。
針對這一情況, 筆者通過多年的數(shù)據(jù)庫教學經(jīng)驗,摸索并總結(jié)出:采用案例教學法,以數(shù)據(jù)庫設計為主線,通過數(shù)據(jù)庫設計的幾個環(huán)節(jié)來穿插講授數(shù)據(jù)庫原理中的各知識點。 把原來抽象學習的一些理論,變成數(shù)據(jù)庫設計實踐中適時的需要和指導,加深學生對原理的理解,同時也提高學生分析問題和解決問題的能力,取得了一定的教學效果。
數(shù)據(jù)庫原理教學設計方案包括三個部分,即明確重要知識點,教學過程設計,教學課時分配。
依據(jù)高職教育“實用為主、夠用為度”的原則,《數(shù)據(jù)庫原理與應用》這門課程的原理部分學生需要重點掌握的幾個知識點是:DB(數(shù)據(jù)庫)、DBMS(數(shù)據(jù)庫管理系統(tǒng))、DBS(數(shù)據(jù)庫系統(tǒng))、關(guān)系數(shù)據(jù)結(jié)構(gòu)、關(guān)系的完整性規(guī)則、E-R 圖、關(guān)系規(guī)范化理論。
如何串講數(shù)據(jù)庫原理的各知識點, 變抽象為生動, 把數(shù)據(jù)庫理論變成實踐過程中適時的需要和指導,使學生能夠理解和接受,是本文探討的重點內(nèi)容。通過多年的教學實踐,下面給出一套數(shù)據(jù)庫原理與應用的教學過程設計:采用案例教學法,以數(shù)據(jù)庫設計為主線,通過數(shù)據(jù)庫設計的幾個環(huán)節(jié)來穿插講授數(shù)據(jù)庫原理各知識點。
內(nèi)容簡介 開發(fā)信息管理系統(tǒng)大體分為前臺與用戶的交互界面及后臺相關(guān)數(shù)據(jù)的管理,前臺與用戶的交互界面由高級語言來完成。 本課程的學習內(nèi)容是后臺的數(shù)據(jù)管理技術(shù)。 通過學習,要掌握后臺數(shù)據(jù)庫管理系統(tǒng)管理數(shù)據(jù)的特點及數(shù)據(jù)庫的設計方法,學完原理后還要通過一個具體的數(shù)據(jù)庫管理系統(tǒng)(如SQL Server2005)平臺詳細介紹數(shù)據(jù)庫原理的應用。
教學案例 選取的教學案例最好能貼近學生實際的學習生活,便于學生理解記憶,縮短教學情境與實際情境的差距,讓學生清楚地認識到這些知識在實際數(shù)據(jù)庫應用系統(tǒng)開發(fā)中的用處, 同時也可以引導學生在理論與實際結(jié)合中理解知識,培養(yǎng)學生分析、解決實際問題的能力。本文以設計一個簡單的“學生成績管理系統(tǒng)”的后臺數(shù)據(jù)庫“學生成績”作為教學案例。
設計數(shù)據(jù)庫 隨著計算機硬件技術(shù)的飛速發(fā)展及數(shù)據(jù)管理的發(fā)展, 數(shù)據(jù)管理的技術(shù)經(jīng)歷了人工管理、文件系統(tǒng)及數(shù)據(jù)庫系統(tǒng)三個階段。 介紹各階段數(shù)據(jù)管理技術(shù)的特點,需要重點介紹目前數(shù)據(jù)庫階段數(shù)據(jù)管理技術(shù)的特點,接下來就可以過渡到講授數(shù)據(jù)庫的一些基本概念,給出數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫系統(tǒng)等術(shù)語的定義。 通過學習,使學生明白通過數(shù)據(jù)庫管理系統(tǒng)來管理數(shù)據(jù)是比較優(yōu)越的, 所以要為“學生成績管理系統(tǒng)”設計一個后臺數(shù)據(jù)庫。 該數(shù)據(jù)庫的設計需六個步驟:需求分析、概念結(jié)構(gòu)設計、邏輯結(jié)構(gòu)設計、物理設計、數(shù)據(jù)庫的實施和數(shù)據(jù)庫的運行及維護。 通過前三個階段講解數(shù)據(jù)庫原理的有關(guān)知識,掌握數(shù)據(jù)庫設計的方法。
1.需求分析。詳細調(diào)查與分析“學生成績管理系統(tǒng)”的業(yè)務與數(shù)據(jù)處理需求, 收集系統(tǒng)需要處理的信息:學生姓名、性別、出生日期、所在班級、選修課名稱、課程學分、選修課程成績。 給出實體與屬性的概念:標識對象(實體),標識每個對象需要存儲的詳細信息(屬性)。
2.概念結(jié)構(gòu)設計。 本階段的任務是把需求分析的結(jié)果用E-R 圖描繪出來。 先給出主碼的概念(能唯一標識實體集中個體的屬性或?qū)傩缘募希?通過學號與姓名的區(qū)別來說明其唯一性的特征。 給出實體之間的關(guān)系(舉例說明三種關(guān)系:1:1,1:N,M:N),最后用E-R 圖來描述實體及實體間的聯(lián)系。介紹E-R 圖中實體、屬性及聯(lián)系的表示方法。 通過前面需求分析,得到“學生成績”數(shù)據(jù)庫的E-R 圖(如圖1 所示)。最后需要向?qū)W生強調(diào)一下E-R 圖與后面具體采用什么樣的數(shù)據(jù)庫管理系統(tǒng)無關(guān)。

圖1 “學生成績”數(shù)據(jù)庫E-R 圖
3.邏輯結(jié)構(gòu)設計。先回憶數(shù)據(jù)庫的概念,強調(diào)數(shù)據(jù)庫是有一定組織結(jié)構(gòu)的數(shù)據(jù)集合,由此給出常用的三種數(shù)據(jù)模型:層次模型、網(wǎng)狀模型、關(guān)系模型,介紹幾種當今流行的商用數(shù)據(jù)庫管理系統(tǒng),告訴學生它們都是關(guān)系型的,重點了解關(guān)系模型的特點。 邏輯結(jié)構(gòu)設計階段的任務就是要把概念結(jié)構(gòu)設計得到的結(jié)果(ER 圖)轉(zhuǎn)換成關(guān)系數(shù)據(jù)模型(若干個關(guān)系模式構(gòu)成)。接下來詳細講解E-R 圖轉(zhuǎn)換成關(guān)系模型的轉(zhuǎn)換規(guī)則(分為實體與聯(lián)系的轉(zhuǎn)換)。 依據(jù)轉(zhuǎn)換規(guī)則得到 “學生成績”數(shù)據(jù)庫的關(guān)系模型如下:
學生(學號,姓名,性別,出生日期,所在班號)
課程(課程編號,課程名稱,學分)
選課(學號,課程編號,成績)
班級(班號,班級名稱)
應通過選課關(guān)系說明主碼有時由屬性的集合構(gòu)成。 然后詳細講解關(guān)系數(shù)據(jù)模型的三個部分:關(guān)系數(shù)據(jù)結(jié)構(gòu)、關(guān)系的完整性規(guī)則和關(guān)系操作。 一個關(guān)系模式的數(shù)據(jù)結(jié)構(gòu)就是一張二維表,介紹二維表的若干性質(zhì);介紹關(guān)系的完整性規(guī)則(舉例說明外碼的概念);介紹常用的關(guān)系操作(選擇、投影和連接)。
關(guān)系規(guī)范化理論是學生學習數(shù)據(jù)庫原理時最難理解的部分。 可通過評估關(guān)系模式的優(yōu)劣,引出關(guān)系規(guī)范化理論內(nèi)容的講解,舉例說明一個不良關(guān)系模式存在數(shù)據(jù)冗余和插入、刪除、更新異常問題,原因是一個關(guān)系模式中包羅萬象,而屬性間存在著各種依賴關(guān)系;給出部分依賴和傳遞依賴的概念,然后再列出第一范式(1NF)、第二范式(2NF)和第三范式(3NF)的概念。 告訴學生一個簡單的系統(tǒng)可以采用 “一事一地”(“事”指實體或聯(lián)系,“地”指關(guān)系)的直觀設計方法。
教學課時分配
通過多次教學實踐,提供數(shù)據(jù)庫原理部分各知識點的課時分配表(如表1),以供參考。

表1 數(shù)據(jù)庫原理課時分配表
本文針對數(shù)據(jù)庫原理知識抽象、 不易講解的特點,采用以數(shù)據(jù)庫設計為主線,通過數(shù)據(jù)庫設計的幾個環(huán)節(jié)來穿插講授數(shù)據(jù)庫原理各知識點的方法,給出了一套數(shù)據(jù)庫原理的教學設計方案。 多年的教學實踐證明,高職高專學生一樣可以把數(shù)據(jù)庫原理學好。 學好原理,不僅能解決數(shù)據(jù)庫設計的難題,更能得心應手地運用,為今后從事信息系統(tǒng)的開發(fā)及相關(guān)工作打下堅實的基礎。
[1]薩師煊.數(shù)據(jù)庫系統(tǒng)概述[M].北京:高等教育出版社,2000.
[2]周慧.數(shù)據(jù)庫應用技術(shù)(SQL Server2005)[M].北京:人民郵電出版社,2009.
[3]北京阿博泰克北大青鳥信息技術(shù)有限公司.SQL Server 數(shù)據(jù)庫設計與高級查詢[M].北京:科學技術(shù)文獻出版社,2008.
[4]喻勇,王群,劉向陽.《數(shù)據(jù)庫原理及應用》課程教學改革初探[J].中國水運,2008,8(12):103-104.
[5]王向輝,崔魏,徐俊立.基于CDIO 的數(shù)據(jù)庫課程教學改革方案研究[J].計算機教育,2011(2):38-41.
[6]劉芳.高職院校“數(shù)據(jù)庫原理及應用”課程教學改革的研究與實踐[J].職業(yè)教育研究,2007(1):99-100.
[7]巴音查汗.高職院校數(shù)據(jù)庫課程教學改革實踐[J].信息與電腦,2010(9):111.