計(jì)算機(jī)數(shù)據(jù)庫設(shè)計(jì)相關(guān)論文(2)
計(jì)算機(jī)數(shù)據(jù)庫設(shè)計(jì)相關(guān)論文
計(jì)算機(jī)數(shù)據(jù)庫設(shè)計(jì)相關(guān)論文篇二
《計(jì)算機(jī)基礎(chǔ)課無紙化考試系統(tǒng)的數(shù)據(jù)庫設(shè)計(jì)》
摘要:隨著計(jì)算機(jī)技術(shù)的不斷發(fā)展,考試技術(shù)也在相應(yīng)的改革和進(jìn)步,無紙化考試趨勢變得越來越明顯。論文從考試系統(tǒng)數(shù)據(jù)庫需求出發(fā),對考試系統(tǒng)數(shù)據(jù)庫進(jìn)行了簡要的設(shè)計(jì),同時(shí)描述了系統(tǒng)數(shù)據(jù)庫連接的實(shí)現(xiàn)代碼以及考試系統(tǒng)數(shù)據(jù)庫安全性設(shè)計(jì)。對計(jì)算機(jī)基礎(chǔ)課無紙化考試系統(tǒng)的設(shè)計(jì)能夠提供一定的參考價(jià)值。
關(guān)鍵詞:無紙化考試系統(tǒng);數(shù)據(jù)庫;設(shè)計(jì)
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2015)12-0000-00
高校計(jì)算機(jī)基礎(chǔ)課程是大學(xué)生學(xué)習(xí)計(jì)算機(jī)的第一門課程,課程側(cè)重于培養(yǎng)學(xué)生動(dòng)手操作能力,在該課程上應(yīng)用無紙化考試系統(tǒng),體現(xiàn)了教育系統(tǒng)的改革以及模式的更新,能夠體現(xiàn)課程性質(zhì)以及提高教學(xué)的工作效率和管理水平。在該系統(tǒng)中,最重要的設(shè)計(jì)是數(shù)據(jù)庫的設(shè)計(jì),數(shù)據(jù)庫中存儲(chǔ)了海量的試題,能夠快捷高效地進(jìn)行出卷、答題、評(píng)分等工作。目前,已經(jīng)有許多考試(遠(yuǎn)程教育、計(jì)算機(jī)等級(jí)考試、微軟辦公自動(dòng)化考試)已經(jīng)采用了標(biāo)準(zhǔn)化在線答題方式,其科學(xué)性、準(zhǔn)確性、公平性也遠(yuǎn)遠(yuǎn)高于傳統(tǒng)的考試形式。
1 考試系統(tǒng)數(shù)據(jù)庫需求
對于數(shù)據(jù)庫設(shè)計(jì)的步驟來說,需求分析是第一步也是最重要的一步,它決定了整個(gè)設(shè)計(jì)的目的和產(chǎn)品形態(tài)、在這個(gè)階段當(dāng)中,主要分析使用該在線考試系統(tǒng)的用戶群體和業(yè)務(wù)活動(dòng),比如管理員的職責(zé)有錄入考試名單、查詢學(xué)生成績等;教師負(fù)責(zé)出卷、修改、評(píng)分等;學(xué)生則需要在規(guī)定時(shí)間完成答題。
2 考試系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)
在線考試系統(tǒng)中,合理地設(shè)計(jì)數(shù)據(jù)庫中的邏輯和屬性關(guān)系能夠保證系統(tǒng)中每個(gè)模塊的功能之間緊密聯(lián)系在一起。在需求分析確立以后,需要將所得到的需求抽象為信息概念,在概念設(shè)計(jì)中,一般采用自底而上的設(shè)計(jì)理念,得出教師、學(xué)生、試題庫、試卷等實(shí)體信息。每一個(gè)試題都有各自的屬性。每一個(gè)實(shí)體之間根據(jù)各自的功能都會(huì)有相應(yīng)的聯(lián)系。
本設(shè)計(jì)選用關(guān)系型數(shù)據(jù)庫SQL Server作為數(shù)據(jù)庫開發(fā)平臺(tái),在邏輯設(shè)計(jì)中,將上述實(shí)體關(guān)系模型(即E-R圖)轉(zhuǎn)為關(guān)系模式,并生成數(shù)據(jù)庫所支持的表結(jié)構(gòu)。詳細(xì)的表結(jié)構(gòu)如下:
Teacher表(教師):字段有編號(hào)、姓名、用戶名、密碼、任課學(xué)科,其中編號(hào)作為主鍵,任課學(xué)科作為區(qū)分教師對領(lǐng)域?qū)W科的劃分。
Student(學(xué)生表):字段有學(xué)號(hào)、姓名、用戶名、密碼。主鍵為學(xué)號(hào)。
Paperlib(題庫表):字段題庫編號(hào)、題目標(biāo)題、題目類型、難易等級(jí)、參考答案、備選答案。編號(hào)作為主鍵,用來保證記錄的唯一性。
Paper(試卷表):字段有編號(hào)、試卷代碼、大標(biāo)題號(hào)、作答區(qū)、題庫編號(hào)、學(xué)號(hào)、卷面分。在該表中,學(xué)號(hào)和題庫編號(hào)是外鍵,分別和學(xué)生表以及題庫表建立對應(yīng)關(guān)系。
3 系統(tǒng)數(shù)據(jù)庫連接代碼
考試系統(tǒng)可以使用PHP語言開發(fā),PHP語言擁有完善數(shù)據(jù)庫集成層,使得它能夠支持絕大多數(shù)的數(shù)據(jù)庫系統(tǒng),并兼容SQL標(biāo)準(zhǔn),能夠高效、快速、穩(wěn)定地進(jìn)行數(shù)據(jù)庫的讀寫操作。在開發(fā)方面,PHP提供了許多用于數(shù)據(jù)庫操作的標(biāo)準(zhǔn)接口,對連接、讀取、寫入數(shù)據(jù)庫等操作非常方便,不論是開發(fā)web應(yīng)用還是其他應(yīng)用程序,都能夠快速地進(jìn)行二次開發(fā)[2]。
在連接方式上,PHP可以建立兩種不同的方法來連接SQL Server。第一種是通過開放式的接口ODBC進(jìn)行連接,它是微軟定義的一種專門用于連接數(shù)據(jù)庫的標(biāo)準(zhǔn),目前市面上的關(guān)系數(shù)據(jù)庫中都會(huì)有相應(yīng)的ODBC驅(qū)動(dòng),ODBC可以說是數(shù)據(jù)庫連接的一種業(yè)界通用標(biāo)準(zhǔn),應(yīng)用非常廣泛。第二種是通過PHP語言直接對SQL Server進(jìn)行連接,PHP語言中集成了Mssql函數(shù)庫專門用于數(shù)據(jù)庫的訪問,主要分為即時(shí)連接和永久連接方式。
即時(shí)連接是指當(dāng)需要進(jìn)行數(shù)據(jù)庫訪問操作是才進(jìn)行的數(shù)據(jù)連接,一般通過mssql_connect函數(shù)來進(jìn)行。永久連接顧名思義就是一直保持著與數(shù)據(jù)庫的連接,通過mssql_pconnect函數(shù)來實(shí)現(xiàn)。在本系統(tǒng)設(shè)計(jì)中,采用即時(shí)連接的方式可以減少數(shù)據(jù)庫的負(fù)荷。
$db_conn = @mssql_connect("Computer_exam","admin","admin");
or die("數(shù)據(jù)庫無法連接!");
mssql_select_db("Computer_exam",$db_conn);
?>
上述代碼中,第一行用于連接數(shù)據(jù)庫,其中Computer_exam為數(shù)據(jù)庫名稱,第一個(gè)admin為用戶名,第二個(gè)為密碼,同時(shí)用了@符號(hào)屏蔽錯(cuò)誤顯示。第二行中的die函數(shù)用來提示數(shù)據(jù)庫連接失敗并關(guān)閉程序,然后選擇需要訪問的數(shù)據(jù)庫。在退出訪問時(shí),使用mssql_close函數(shù)把連接關(guān)閉??梢詫iT生成兩個(gè)文件用來連接和關(guān)閉數(shù)據(jù)庫,并命名為db_conn.php和db_exit.php。
4 考試系統(tǒng)數(shù)據(jù)庫安全性
數(shù)據(jù)庫系統(tǒng)的安全性與數(shù)據(jù)庫管理系統(tǒng)關(guān)系密切,因?yàn)閿?shù)據(jù)庫管理系統(tǒng)如果擁有強(qiáng)大的安全機(jī)制,那么數(shù)據(jù)庫系統(tǒng)也會(huì)具備較好的安全性能。提高數(shù)據(jù)庫系統(tǒng)的安全性可以采用數(shù)據(jù)加密的方式,我們可以在操作系統(tǒng)層、數(shù)據(jù)庫管理系統(tǒng)內(nèi)核層以及數(shù)據(jù)庫管理系統(tǒng)應(yīng)用層三個(gè)層面進(jìn)行加密。
在操作系統(tǒng)層面上,由于系統(tǒng)并不能識(shí)別數(shù)據(jù)庫文件當(dāng)中的一些數(shù)據(jù)的邏輯關(guān)系,所以不能通過產(chǎn)生合理密鑰的方式來加密,也不便于對密鑰的管理和使用,因此,對于大型的數(shù)據(jù)庫很難在操作系統(tǒng)層面上實(shí)現(xiàn)數(shù)據(jù)的加密。
在數(shù)據(jù)庫管理的內(nèi)核層加密是指把數(shù)據(jù)在物理存取之前完成數(shù)據(jù)的加密或解密,這種加密功能強(qiáng)大,并且不會(huì)影響數(shù)據(jù)庫管理系統(tǒng)的功能,能夠?qū)烧叩倪M(jìn)行無縫耦合,但是該加密方式必須在服務(wù)器中進(jìn)行算法的運(yùn)算工作,這樣就會(huì)使服務(wù)器的負(fù)荷增大,同時(shí)還需要數(shù)據(jù)庫管理系統(tǒng)開發(fā)商提供接口用于數(shù)據(jù)的加密。
目前采用的比較多的加密方式是在數(shù)據(jù)庫管理系統(tǒng)應(yīng)用層的加密,通過在數(shù)據(jù)庫管理系統(tǒng)中根據(jù)加密的要求生成一個(gè)外層的工具,自動(dòng)完成對數(shù)據(jù)的加密解密工作,這樣就可以使加密工作不會(huì)對服務(wù)器造成負(fù)擔(dān),同時(shí)也可實(shí)現(xiàn)網(wǎng)絡(luò)加密,但是相應(yīng)的加密功能會(huì)收到限制,不利于與數(shù)據(jù)庫管理系統(tǒng)的耦合。
5 結(jié)語
本文設(shè)計(jì)了一種計(jì)算機(jī)基礎(chǔ)無紙化考試系統(tǒng),從需求分析開始,再進(jìn)行邏輯關(guān)系設(shè)計(jì)、數(shù)據(jù)表的生成以及數(shù)據(jù)庫連接方法的描述,最后對數(shù)據(jù)庫安全性進(jìn)行分析,對高校計(jì)算機(jī)基礎(chǔ)課程實(shí)施無紙化考試有一定的作用。
參考文獻(xiàn)
[1]石志國.JSP網(wǎng)絡(luò)開發(fā)詳解[M].北京:電子工業(yè)出版社,2007.
[2]陳恭和.數(shù)據(jù)庫基礎(chǔ)與SQL應(yīng)用教程[M].北京:高等教育出版社,2003.
計(jì)算機(jī)數(shù)據(jù)庫設(shè)計(jì)相關(guān)論文相關(guān)文章:
1.關(guān)于計(jì)算機(jī)數(shù)據(jù)庫技術(shù)方面論文
2.關(guān)于計(jì)算機(jī)數(shù)據(jù)庫運(yùn)用方面的論文
3.關(guān)于計(jì)算機(jī)數(shù)據(jù)庫技術(shù)的論文