鄭戟明 董云朝 肖宇 錢之琳
摘要:近年來,MySQL因為自身一系列優(yōu)勢,已成為數(shù)據(jù)庫應(yīng)用中熱門軟件。目前作為計算機(jī)應(yīng)用的重要課程在各個高校廣泛開設(shè)。文章在分析數(shù)據(jù)庫課程特點(diǎn)和現(xiàn)狀的基礎(chǔ)上,根據(jù)數(shù)據(jù)庫課程特點(diǎn),結(jié)合學(xué)生的實際情況,對教學(xué)內(nèi)容進(jìn)行了合理的安排,并將教學(xué)內(nèi)容分階段分步驟有效地運(yùn)用到課堂教學(xué)的過程中。文章表明了,通過對教學(xué)內(nèi)容和教學(xué)手段的改進(jìn),學(xué)生能快速有效地掌握運(yùn)用數(shù)據(jù)庫知識的方法,同時學(xué)生的綜合應(yīng)用能力也得到了一定的訓(xùn)練。
關(guān)鍵詞:數(shù)據(jù)庫;MySQL;數(shù)據(jù)查詢;課程;課堂教學(xué)
中圖分類號:G642 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2020)03-0021-02
1 概述
當(dāng)今社會早已邁人了大數(shù)據(jù)時代,數(shù)據(jù)不可避免地成為整個社會有序正常運(yùn)行的重要信息資源。為了使數(shù)據(jù)能夠有效地存儲、管理、組織和運(yùn)用,已離不開數(shù)據(jù)庫技術(shù)的支持和發(fā)展。目前數(shù)據(jù)庫技術(shù)已經(jīng)應(yīng)用到社會的各行各業(yè),是各類計算機(jī)相關(guān)技術(shù)中發(fā)展較為迅速、應(yīng)用較為廣泛的一項技術(shù),名副其實地成為信息管理系統(tǒng)的核心和基礎(chǔ)。MySQL是一種關(guān)系數(shù)據(jù)庫管理系統(tǒng),使用SQL語言訪問數(shù)據(jù)庫。MySQL具有體積小、速度快、開源、成本低等一系列特點(diǎn),非常適合個人用戶和中小型企業(yè)。
MySQL數(shù)據(jù)庫管理系統(tǒng)的特點(diǎn),同樣非常適合將其應(yīng)用到數(shù)據(jù)庫課程教學(xué)中。當(dāng)然在MySQL數(shù)據(jù)庫課程的教學(xué)過程中,需要教師嘗試引入一些較為先進(jìn)的教學(xué)理念,把數(shù)據(jù)庫設(shè)計知識能通過一種新的手段和途徑傳授給學(xué)生,使學(xué)生能夠在較好掌握數(shù)據(jù)庫基本概念的基礎(chǔ)上,進(jìn)而能夠運(yùn)用數(shù)據(jù)庫技術(shù)去開發(fā)數(shù)據(jù)庫管理系統(tǒng),在整個學(xué)習(xí)過程中學(xué)生不但掌握了數(shù)據(jù)庫技術(shù)應(yīng)用的能力,同時具備開發(fā)和創(chuàng)新能力,也為數(shù)據(jù)庫課程教學(xué)探索一種新的教學(xué)方式。
2 數(shù)據(jù)庫課程的特點(diǎn)和現(xiàn)狀
數(shù)據(jù)庫課程是大學(xué)階段與計算機(jī)應(yīng)用技術(shù)相關(guān)的一門重要課程,掌握和應(yīng)用數(shù)據(jù)庫知識不僅僅是工科院校學(xué)生的必備能力,商科類院校甚至文科院校的學(xué)生都需要掌握扎實的數(shù)據(jù)庫知識,以適應(yīng)現(xiàn)代社會對人才的要求。
數(shù)據(jù)庫課程教學(xué)的目標(biāo)是讓學(xué)生在了解和掌握數(shù)據(jù)庫的相關(guān)基本概念、基本構(gòu)成的基礎(chǔ)上,學(xué)會搭建數(shù)據(jù)庫系統(tǒng)的各種方法,最終要求學(xué)生能夠熟練地運(yùn)用數(shù)據(jù)庫知識結(jié)合自身專業(yè)來解決各種實際問題。但是現(xiàn)行的數(shù)據(jù)庫課程的教學(xué)內(nèi)容大多偏向與數(shù)據(jù)庫理論的講解,而忽略了數(shù)據(jù)庫知識的實際應(yīng)用,同時又存在課程體系有待完善、內(nèi)容資源不夠充分、教學(xué)研究相對滯后等問題,這一系列問題不可避免導(dǎo)致學(xué)生在學(xué)習(xí)過程中常常會感到力不從心,有畏懼心理,從而影響了數(shù)據(jù)庫知識的進(jìn)一步應(yīng)用和相關(guān)后續(xù)課程的開展。
所以數(shù)據(jù)庫課程開設(shè)需要綜合考慮和設(shè)計,特別要注重解決數(shù)據(jù)庫理論知識如何與實際運(yùn)用相結(jié)合,在實踐中消化和鞏固理論知識。本文基于MySQL數(shù)據(jù)庫課程,探討如何采用案例教學(xué)手段來實現(xiàn)數(shù)據(jù)庫理論和實際應(yīng)用相結(jié)合,使得學(xué)生能在應(yīng)用鞏固所學(xué)知識,加深對知識理解,達(dá)到較好的教學(xué)效果。
3 MySQL數(shù)據(jù)庫課程的設(shè)計
MySQL數(shù)據(jù)庫課程設(shè)計內(nèi)容包含了數(shù)據(jù)庫的理論知識、運(yùn)用MySQL設(shè)計和開發(fā)數(shù)據(jù)庫系統(tǒng)、掌握運(yùn)用SQL語句、數(shù)據(jù)庫高級應(yīng)用等知識。下面就結(jié)合MySQL數(shù)據(jù)庫課程的特點(diǎn),對課程內(nèi)容和教學(xué)方法進(jìn)行設(shè)計,提出解決數(shù)據(jù)庫課程中存在問題的思路。
3.1 MySQL數(shù)據(jù)庫使用環(huán)境及配置問題
MySQL數(shù)據(jù)庫使用環(huán)境配置包含了,系統(tǒng)安裝和登錄、配置文件設(shè)置、服務(wù)啟動等問題。上述問題應(yīng)該來講并不復(fù)雜,但是對于一些初次接觸MySQL數(shù)據(jù)庫的學(xué)生來講,并不是非常順利的事。如在Mac系統(tǒng)中的安裝MySQL;配置文件mysql.ini位置;設(shè)置MySQL系統(tǒng)的環(huán)境變量;通過行命令登錄MySQL等問題。上述這些問題幾乎每個學(xué)生都會碰到,如果解決不好,不單會影響教學(xué)的推進(jìn),更會打擊學(xué)生學(xué)習(xí)的積極性。
所以課程的第一部分的教學(xué)內(nèi)容就安排了數(shù)據(jù)庫與MySQL基礎(chǔ)知識,著重解決上述的問題,給學(xué)生講解需要注意的地方,以及出現(xiàn)問題時如何應(yīng)對。特別是各種行命令的使用,其中包含了大量的命令和參數(shù),學(xué)生常常出錯。為此,在課程內(nèi)容中添加了一款專為MySQL設(shè)計的數(shù)據(jù)庫建模工具M(jìn)ySQL Workbench。MySQL Workbench可以用來設(shè)計和創(chuàng)建新的數(shù)據(jù)庫,建立數(shù)據(jù)庫文檔,以及進(jìn)行較為復(fù)雜的MySQL數(shù)據(jù)庫操作。MySQL Workbench是一個圖像界面,比起行命令界面學(xué)生更容易接受,通過此工具學(xué)生可以較為方便進(jìn)行MySQL系統(tǒng)的登錄,執(zhí)行MySQL命令、設(shè)置參數(shù)等操作。同時通過Workbench,讓學(xué)生學(xué)會創(chuàng)建數(shù)據(jù)庫和數(shù)據(jù)表、輸入數(shù)據(jù)、索引與約束設(shè)置等數(shù)據(jù)庫的基本操作。
3.2 基于案例實現(xiàn)MySQL數(shù)據(jù)庫的查詢功能
數(shù)據(jù)查詢是數(shù)據(jù)庫中最基本的功能之一,為了更好體現(xiàn)數(shù)據(jù)庫的查詢功能,需要搭建數(shù)據(jù)量較大,數(shù)據(jù)字段較為豐富的數(shù)據(jù)庫和數(shù)據(jù)表。如果數(shù)據(jù)表中只有有限的幾個字段幾條記錄,無法實現(xiàn)數(shù)據(jù)庫的各種復(fù)雜的查詢功能,學(xué)生也無法體會到查詢的真正作用。因此,在教學(xué)過程中我們創(chuàng)建了一個包含5個數(shù)據(jù)表,記錄超過5000條的數(shù)據(jù)庫銷售系統(tǒng)供學(xué)生進(jìn)行查詢功能的學(xué)習(xí)和實踐,在此數(shù)據(jù)庫中可以通過各種方法,實現(xiàn)各種復(fù)雜查詢功能。數(shù)據(jù)庫的查詢功能是數(shù)據(jù)庫課程教學(xué)中非常重要的內(nèi)容,讓學(xué)生掌握好這部分知識也是整個教學(xué)過程的重點(diǎn)。MySQL數(shù)據(jù)庫查詢必須要用到SQL語句,然而查詢的SQL語句涉及命令、函數(shù)、參數(shù)很多,學(xué)生不可能一下子完全掌握,所以我們采用分階段分步驟去實現(xiàn)查詢功能。
第一階段實現(xiàn)簡單查詢的功能,在此階段所有的查詢基于單表、單條件進(jìn)行,如查詢product表中產(chǎn)地為“中國”的產(chǎn)品信息,SQL語句為“SELECT* FROM product WHERE Place=中國;”,這樣較為簡單的結(jié)構(gòu)對于大多數(shù)學(xué)生都很快能掌握。第二階段在前階段基礎(chǔ)上,查詢條件增加關(guān)系運(yùn)算符、關(guān)鍵字,再進(jìn)一步實現(xiàn)模糊查詢等較為復(fù)雜的查詢。因為有了簡單查詢的基礎(chǔ),實現(xiàn)這部分查詢功能難度應(yīng)該不會太大。在此階段必須要和學(xué)生講解清楚關(guān)系運(yùn)算符、關(guān)鍵字和模糊查詢用法和注意點(diǎn),使學(xué)生能順利過渡到下一階段。查詢第三階段的任務(wù),是實現(xiàn)組合條件查詢,聚合函數(shù)的使用,并增加分組、排序和HAVING條件等功能。在此階段重點(diǎn)和難點(diǎn)是組合條件關(guān)系符AND和OR的用法,以及HAVING條件的使用,特別要重點(diǎn)講解HAVINC條件和WHERE條件的不同用法。最后一階段就是實現(xiàn)多表查詢了,該階段涉及主鍵和外鍵的概念,表和表之間的關(guān)聯(lián),以及連接查詢和子查詢。這里的重點(diǎn)是如何實現(xiàn)連接查詢和子查詢,這部分知識對學(xué)生來講是最難的,需要通過案例反復(fù)講解,反復(fù)實踐才能完全理解和掌握。
3.3 MySQL數(shù)據(jù)庫的高級應(yīng)用
經(jīng)過前面多個階段的學(xué)習(xí),學(xué)生已經(jīng)學(xué)會了數(shù)據(jù)庫的基本操作,以及利用SQL語句實現(xiàn)各種查詢功能。為了讓學(xué)生更深入了解數(shù)據(jù)庫相關(guān)知識,可以將數(shù)據(jù)庫高級應(yīng)用納入課程內(nèi)容中。數(shù)據(jù)庫的高級應(yīng)用的內(nèi)容包括,數(shù)據(jù)庫的視圖、數(shù)據(jù)備份與還原、用戶管理、權(quán)限管理等。這部分知識所涉及的數(shù)據(jù)庫命令比較多,參數(shù)應(yīng)用和SQL語句結(jié)構(gòu)比較復(fù)雜,如創(chuàng)建用戶的SQL語句為“GRANT SELECT ON purchase.product TO 'al-an@,localhost' IDENTIFIED BY '0123,:”,對學(xué)生又是一個難關(guān)。這里我們通過提出問題方式引起學(xué)生的注意和興趣,如你創(chuàng)建的數(shù)據(jù)庫如何保存管理?又如何調(diào)用你已有的數(shù)據(jù)庫?然后引出數(shù)據(jù)備份與還原實現(xiàn)的方法。再如你創(chuàng)建的數(shù)據(jù)庫系統(tǒng),要授權(quán)給某用戶一些特定的訪問權(quán)限,如何設(shè)置?要收回權(quán)限又如何操作?接著講解用戶管理、權(quán)限管理等相關(guān)知識,為了解決問題,學(xué)生會有興趣去了解學(xué)習(xí)這些知識,最后再讓學(xué)生到案例中去實現(xiàn)這些功能,鞏固所學(xué)內(nèi)容。
3.4 MySQL數(shù)據(jù)庫的綜合應(yīng)用能力訓(xùn)練
到此學(xué)生已經(jīng)基本了解了數(shù)據(jù)庫的作用和功能,也大致掌握了數(shù)據(jù)庫系統(tǒng)使用的方法。但是所學(xué)習(xí)內(nèi)容還是比較基本的,所用到的SQL語句和函數(shù)也有限,各部分知識點(diǎn)還是相對獨(dú)立,關(guān)聯(lián)度不是很高,還有針對學(xué)生思考問題,解決問題這方面的應(yīng)用能力訓(xùn)練較少。所以在課程的這一階段,教師的主要任務(wù)是鼓勵學(xué)生多思考,尋求解決問題的方法,從而達(dá)到培養(yǎng)學(xué)生應(yīng)用能力的目的。
具體實施方法是,將學(xué)生分成若干個小組,要求每個小組編寫一個數(shù)據(jù)庫管理系統(tǒng)案例,每個案例除了要實現(xiàn)數(shù)據(jù)庫的基本功能外,還應(yīng)該有所拓展,如數(shù)據(jù)庫編程、數(shù)據(jù)庫安全等,解決這些問題,光靠課堂所學(xué)的知識是遠(yuǎn)遠(yuǎn)不夠的,需要每個小組合理分工,利用課后時間去思考,去查資料,去尋找解決問題的途徑,當(dāng)然因為多方面的原因可能導(dǎo)致學(xué)生完成的情況不太理想,出現(xiàn)各種各樣的問題,有的問題學(xué)生可能也無法立即解決,這都是正?,F(xiàn)象。這階段的教學(xué)目的在于培養(yǎng)學(xué)生思考探索問題的能力,培養(yǎng)學(xué)生的團(tuán)隊合作精神,而不是一味追求結(jié)果。通過這些訓(xùn)練,學(xué)生思考問題、解決問題的能力會一定有所提高,學(xué)生的綜合應(yīng)用能力也隨之得到了提升。
學(xué)生綜合應(yīng)用能力的訓(xùn)練,課堂教學(xué)只是很有限的一部分,更多的是需要通過實際運(yùn)用來提升各方面的能力。所以學(xué)生在學(xué)習(xí)完課堂知識后,要將所學(xué)內(nèi)容和自己的專業(yè)特點(diǎn)結(jié)合起來,通過實際工作也檢驗和提高自己。如學(xué)生可以參加校、省市以及全國等各類計算機(jī)應(yīng)用能力大賽,通過大賽中積累知識和經(jīng)驗,開拓知識面,使得各方面的能力都得到了鍛煉,這些收獲是老師所不能給予的。
4 結(jié)束語
數(shù)據(jù)庫應(yīng)用是計算機(jī)應(yīng)用技術(shù)的重要組成部分,在大學(xué)學(xué)習(xí)階段中學(xué)生非常有必要了解和掌握相關(guān)的數(shù)據(jù)庫基本技術(shù)。本文基于數(shù)據(jù)庫案例去實現(xiàn)數(shù)據(jù)庫的基本功能,將數(shù)據(jù)庫教學(xué)中的重點(diǎn)和難點(diǎn)通過分階段分步驟方法,將課堂教學(xué)由淺入深,由表及里逐漸推進(jìn),使學(xué)生能較快地理解和掌握數(shù)據(jù)庫知識,實踐下來這種教學(xué)方法是比較有效的。
參考文獻(xiàn):
[1]李德勝.MySQL數(shù)據(jù)庫課程教學(xué)難點(diǎn)教學(xué)分析——以數(shù)據(jù)庫設(shè)計為例[J].長春大學(xué)學(xué)報,2017(10):113-116.
[2]伍祥,吳錦華,霍清華,朱偉杰,應(yīng)用型本科高校數(shù)據(jù)庫課程教學(xué)的探索和研究[J].電腦知識,2019,15(6):94-95.
[3]楊琳.MySQL數(shù)據(jù)庫優(yōu)化教學(xué)探討[J].信息與電腦,2018(14):248-250.
[4]竇亮,徐飛,谷林濤.大數(shù)據(jù)背景下數(shù)據(jù)庫系統(tǒng)實踐課程的教學(xué)改革[J].計算機(jī)教育,2018,4(28):117-120.
[5]商新娜,馬楠,彭濤.數(shù)據(jù)庫課程開放實踐教學(xué)平臺的改革與建設(shè)[J]計算機(jī)教育,2018(8):160-163.
[6]鄭志新.高校計算機(jī)類專業(yè)數(shù)據(jù)庫課程實驗教學(xué)研究[J]信息技術(shù)與信息化,2019(3):102-105.
[7]劉曉慶,吳炎太.新工科背景下數(shù)據(jù)庫原理與應(yīng)用課程教學(xué)改革探析[J].中國管理信息化,2018(18):206-207.
[8]李志梅,何金花,應(yīng)用型人才培養(yǎng)模式下本科數(shù)據(jù)庫管理系統(tǒng)課程教學(xué)研究與實踐[J].教育教學(xué)論壇,2017(4):165-166.