版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 計(jì)算機(jī)工程學(xué)院</b></p><p><b> 數(shù)據(jù)庫(kù)原理及應(yīng)用</b></p><p><b> 課程設(shè)計(jì)報(bào)告</b></p><p> 課題名稱(chēng): 圖書(shū)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) </p><p>
2、 專(zhuān)業(yè): 信息管理與信息系統(tǒng) </p><p> 班級(jí): </p><p> 姓名: </p><p> 學(xué)號(hào): </p><p> 指導(dǎo)老師: </p>&l
3、t;p> 2013 年 12 月 14 日</p><p><b> 中文摘要</b></p><p><b> 外文摘要</b></p><p><b> 目 錄</b></p><p> 1引言…………………………………………………………………
4、…………………1</p><p> 1.1選題背景 …………………………………………………………………………1</p><p> 1.2系統(tǒng)環(huán)境 …………………………………………………………………………1 </p><p> 2 系統(tǒng)總體分析…………………………………………………………………………2</p><p> 2.1需求分析
5、…………………………………………………………………………2</p><p> 2.1.1 功能需求………………………………………………………………………2</p><p> 2.1.2 性能需求………………………………………………………………………3</p><p> 2.1.3 環(huán)境需求………………………………………………………………………3</p&g
6、t;<p> 2.2 可行性分析 ………………………………………………………………………3</p><p> 2.2.1 經(jīng)濟(jì)可行性……………………………………………………………………3</p><p> 2.2.2 技術(shù)可行性……………………………………………………………………3</p><p> 2.2.3 管理可行性……………………………
7、………………………………………4</p><p> 2.2.4 用戶可行性……………………………………………………………………4</p><p> 3 系統(tǒng)總體設(shè)計(jì) ……‥…………………………………………………………………4</p><p> 3.1 軟件模塊結(jié)果設(shè)計(jì) ………………………………………………………………4</p><p>
8、 3.1.1 系統(tǒng)方案確定…………………………………………………………………4</p><p> 3.1.2 軟件結(jié)構(gòu)設(shè)計(jì)…………………………………………………………………4</p><p> 3.2系統(tǒng)模塊功能圖 …………………………………………………………………4</p><p> 3.3 數(shù)據(jù)庫(kù)設(shè)計(jì) ……………………………………………………………………
9、…5</p><p> 3.4 概念結(jié)構(gòu)設(shè)計(jì) ……………………………………………………………………6</p><p> 3.4.1實(shí)體功能圖……………………………………………………………………6</p><p> 3.4.2 E-R圖 ………………………………………………………………………8</p><p> 3.5 邏輯結(jié)構(gòu)設(shè)計(jì)
10、……………………………………………………………………8</p><p> 4 系統(tǒng)實(shí)現(xiàn)與測(cè)試………………………………………………………………………10</p><p> 4.1 連接數(shù)據(jù)庫(kù)的實(shí)現(xiàn)………………………………………………………………10</p><p> 4.2 模塊功能實(shí)現(xiàn)……………………………………………………………………10</p>
11、<p> 5 備份和還原數(shù)據(jù)庫(kù)……………………………………………………………………16</p><p> 5.1 規(guī)劃數(shù)據(jù)庫(kù)的還原和備份………………………………………………………16</p><p> 5.2 數(shù)據(jù)庫(kù)的備份……………………………………………………………………16</p><p> 5.3 還原數(shù)據(jù)庫(kù)………………………………………
12、………………………………18</p><p> 結(jié)論……………………………………………………………………………………20</p><p> 致謝……………………………………………………………………………………21</p><p> 參考文獻(xiàn) ……………………………………………………………………………22</p><p><b&g
13、t; 1引言</b></p><p><b> 1.1選題背景</b></p><p> 現(xiàn)代人的生活離不開(kāi)圖書(shū),不論在家還是在公司,讀書(shū)已經(jīng)成為了一種生活慣。然而現(xiàn)在的圖書(shū)種類(lèi)繁多,數(shù)量龐大,出版速度快,要對(duì)這些書(shū)籍進(jìn)行管理,傳統(tǒng)的純?nèi)斯す芾矸椒ㄒ呀?jīng)不能適用。為了更好,更快的管理這些圖書(shū),我們必須提出一種行之有效的方法。為此我們需要一個(gè)高效率的系統(tǒng)
14、來(lái)進(jìn)行管理。計(jì)算機(jī)的發(fā)展在很大程度上幫助我們解決了這個(gè)問(wèn)題。首先,計(jì)算機(jī)可以代替人工進(jìn)行許多繁雜的勞動(dòng);其次,計(jì)算機(jī)可以節(jié)省許多資源;第三,計(jì)算機(jī)可以大大的提高人們的工作效率;第四,計(jì)算機(jī)可以使敏感文檔更加安全等?,F(xiàn)在我國(guó)的很多學(xué)校圖書(shū)館,公司,企業(yè)都是用了計(jì)算機(jī)管理書(shū)資料,這種管理機(jī)制節(jié)省了很多人力和物力,在信息時(shí)代這種管理方法必然被廣泛應(yīng)用。</p><p><b> 1.2 系統(tǒng)環(huán)境</b
15、></p><p> Visual FoxPro 6.0及其中文版,是可運(yùn)行于Windows 95和Windows NT平臺(tái)的32位數(shù)據(jù)庫(kù)開(kāi)發(fā)系統(tǒng),它不僅可以簡(jiǎn)化數(shù)據(jù)庫(kù)管理,而且能使應(yīng)用程序的開(kāi)發(fā)流程更為合理[1]。Visual FoxPro 6.0使組織數(shù)據(jù)、定義數(shù)據(jù)庫(kù)規(guī)則和建立應(yīng)用程序等工作變得簡(jiǎn)單易行。利用可視化的設(shè)計(jì)工具和向?qū)В脩艨梢钥焖賱?chuàng)建表單、查詢和打印報(bào)表[2]。 </p>
16、<p> Visual FoxPro 6.0還提供了一個(gè)集成化的系統(tǒng)開(kāi)發(fā)環(huán)境,它不僅支持過(guò)程式編程技術(shù),而且在語(yǔ)言方面作了強(qiáng)大的擴(kuò)充,支持面向?qū)ο罂梢暬幊碳夹g(shù),并擁有功能強(qiáng)大的可視化程序設(shè)計(jì)工具[3]。目前,Visual FoxPro 6.0是用戶收集信息、查詢數(shù)據(jù)、創(chuàng)建集成數(shù)據(jù)庫(kù)系統(tǒng)、進(jìn)行實(shí)用系統(tǒng)開(kāi)發(fā)較為理想的工具軟件。</p><p> 本系統(tǒng)是基于VFP數(shù)據(jù)庫(kù)技術(shù)的管理信息系統(tǒng),包含查詢、添
17、加、修改等管理數(shù)據(jù)庫(kù)的功能[4]。 </p><p><b> 2 系統(tǒng)總體分析</b></p><p><b> 2. 1 需求分析</b></p><p> 2.1.1 功能需求</p><p> 在圖書(shū)管理系統(tǒng)中,不外乎三個(gè):讀者、圖書(shū)、管理人員。圖書(shū)管理、借書(shū)、還書(shū)等是系統(tǒng)的基礎(chǔ)業(yè)務(wù)
18、。而圖書(shū)館網(wǎng)絡(luò)管理系統(tǒng)可向讀者提供圖書(shū)查詢和電子圖書(shū)的服務(wù)等,用戶則對(duì)圖書(shū)的查詢、借閱,電子圖書(shū)網(wǎng)上閱讀功能操作;管理員可對(duì)系統(tǒng)用戶任意分配權(quán)限,控制圖書(shū)的流通,它能使圖書(shū)館工作人員從繁重的工作中解脫出來(lái),大大減輕了工作量,減少人為的工作失誤,全面提高圖書(shū)館的管理效率及服務(wù)質(zhì)量,從而使圖書(shū)管理水平和業(yè)務(wù)躍上一個(gè)新的臺(tái)階[5]。</p><p> 圖書(shū)管理系統(tǒng)應(yīng)具備以下兩個(gè)特點(diǎn):</p><p
19、> 系統(tǒng)應(yīng)用和系統(tǒng)管理相結(jié)合在系統(tǒng)中,用戶可以對(duì)圖書(shū)進(jìn)行查詢、查閱、借和還等操作理員可以對(duì)用戶和圖書(shū)進(jìn)行分配權(quán)限,控制圖書(shū)的流通。圖書(shū)的管理和閱讀相結(jié)合[6]。</p><p> 2.1.2 性能需求</p><p> 為了保證系統(tǒng)能夠長(zhǎng)期、安全、穩(wěn)定、可靠、高效的運(yùn)行,圖書(shū)管理系統(tǒng)應(yīng)該滿足以下的性能需求:</p><p> ?、傧到y(tǒng)處理的準(zhǔn)確性和及時(shí)性
20、</p><p> 系統(tǒng)處理的準(zhǔn)確性和及時(shí)性是系統(tǒng)的必要性能。在系統(tǒng)設(shè)計(jì)和開(kāi)發(fā)過(guò)程中,要充分考慮系統(tǒng)當(dāng)前和將來(lái)可能承受的工作量,使系統(tǒng)的處理能力和響應(yīng)時(shí)間能夠滿足學(xué)校對(duì)信息處理的需求[7]。</p><p> ②系統(tǒng)的開(kāi)放性和系統(tǒng)的可擴(kuò)充性</p><p> 圖書(shū)管理系統(tǒng)在開(kāi)發(fā)過(guò)程中,應(yīng)該充分考慮以后的可擴(kuò)充性。例如用戶查詢的需求也會(huì)不斷的更新和完善。所有這些
21、,都要求系統(tǒng)提供足夠的手段進(jìn)行功能的調(diào)整和擴(kuò)充。而要實(shí)現(xiàn)這一點(diǎn),應(yīng)通過(guò)系統(tǒng)的開(kāi)放性來(lái)完成,既系統(tǒng)應(yīng)是一個(gè)開(kāi)放系統(tǒng),只要符合一定的規(guī)范,可以簡(jiǎn)單的加入和減少系統(tǒng)的模塊,配置系統(tǒng)的硬件[8]。通過(guò)軟件的修補(bǔ)、替換完成系統(tǒng)的升級(jí)和更新?lián)Q代。</p><p> ③系統(tǒng)的易用性和易維護(hù)性</p><p> 圖書(shū)管理系統(tǒng)是直接面對(duì)使用人員的,而使用人員往往對(duì)計(jì)算機(jī)并不時(shí)非常熟悉。這就要求系統(tǒng)能夠提
22、供良好的用戶接口,易用的人機(jī)交互界面。要實(shí)現(xiàn)這一點(diǎn),就要求系統(tǒng)應(yīng)該盡量使用用戶熟悉的術(shù)語(yǔ)和中文信息的界面;針對(duì)用戶可能出現(xiàn)的使用問(wèn)題,要提供足夠的在線幫助,縮短用戶對(duì)系統(tǒng)熟悉的過(guò)程。</p><p><b> ④系統(tǒng)的標(biāo)準(zhǔn)性</b></p><p> 系統(tǒng)在設(shè)計(jì)開(kāi)發(fā)使用過(guò)程中都要涉及到很多計(jì)算機(jī)硬件、軟件。所有這些都要符合主流國(guó)際、國(guó)家和行業(yè)標(biāo)準(zhǔn)。</p&g
23、t;<p><b> ⑤系統(tǒng)的先進(jìn)性</b></p><p> 目前計(jì)算系統(tǒng)的技術(shù)發(fā)展相當(dāng)快,做為圖書(shū)管理系統(tǒng)工程,在系統(tǒng)的生命周期盡量做到系統(tǒng)的先進(jìn),充分完成企業(yè)信息處理的要求而不至于落后。這一方面通過(guò)系統(tǒng)的開(kāi)放性和可擴(kuò)充性,不斷改善系統(tǒng)的功能完成。另一方面,在系統(tǒng)設(shè)計(jì)和開(kāi)發(fā)的過(guò)程中,應(yīng)在考慮成本的基礎(chǔ)上盡量采用當(dāng)前主流并先進(jìn)且有良好發(fā)展前途的產(chǎn)品[9]。</p&g
24、t;<p><b> ?、尴到y(tǒng)的響應(yīng)速度</b></p><p> 圖書(shū)管理系統(tǒng)系統(tǒng)在日常處理中的響應(yīng)速度為秒級(jí),達(dá)到實(shí)時(shí)要求,以及時(shí)反饋信息。在進(jìn)行統(tǒng)計(jì)分析時(shí),根據(jù)所需數(shù)據(jù)量的不同而從秒級(jí)到分鐘級(jí)原則是保證操作人員不會(huì)因?yàn)樗俣葐?wèn)題而影響工作效率。</p><p> 2.1.3 環(huán)境需求</p><p> 綜合開(kāi)發(fā)此軟件的功
25、能需求和性能需求,此軟件所需要的開(kāi)發(fā)環(huán)境相當(dāng)自由,可以在眾多版本的操作系統(tǒng)上開(kāi)發(fā)和運(yùn)行;如:windows XP</p><p><b> 2.2 可行性分析</b></p><p> 2.2.1 經(jīng)濟(jì)可行性</p><p> 實(shí)驗(yàn)室里有開(kāi)發(fā)所需的各種資源,無(wú)需經(jīng)濟(jì)投入。</p><p> 2.2.2 技術(shù)可行性
26、</p><p> 此次課程設(shè)計(jì)是大學(xué)專(zhuān)業(yè)知識(shí)的一次綜合應(yīng)用與提高,通過(guò)上網(wǎng),圖書(shū)館,我查到了一定量的資料,滿足這次課程設(shè)計(jì)的要求。</p><p> 2.2.3 管理可行性</p><p> 主要是管理人員是否支持,現(xiàn)有的管理制度和方法是否科學(xué),規(guī)章制度是否齊全,原始數(shù)據(jù)是否正確等。規(guī)章制度和管理方法為書(shū)城的建設(shè)提供了制度保障。</p><
27、;p> 2.2.4 用戶使用可行性</p><p> 本系統(tǒng)界面美觀,操作簡(jiǎn)單方便,不熟悉計(jì)算機(jī)的用戶亦能自如的操作,按所需可對(duì)各類(lèi)信息進(jìn)行查詢與狀態(tài)顯示。</p><p> 綜上所述,此系統(tǒng)開(kāi)發(fā)目標(biāo)已明確,在技術(shù),經(jīng)濟(jì),操作等方面都可行,并且投入少、見(jiàn)效快。因此系統(tǒng)的開(kāi)發(fā)是完全可行的[10]。</p><p><b> 3 系統(tǒng)總體設(shè)計(jì)&l
28、t;/b></p><p> 3.1 軟件模塊結(jié)構(gòu)設(shè)計(jì)</p><p> 3.1.1 系統(tǒng)方案確定。</p><p> 通過(guò)調(diào)研和分析,系統(tǒng)主要應(yīng)完成的功能包括:書(shū)庫(kù)信息管理、讀者檔案管理、借閱管理、還書(shū)管理、圖書(shū)檢索和系統(tǒng)維護(hù)。</p><p> 3.1.2 軟件結(jié)構(gòu)設(shè)計(jì)。</p><p> 圖書(shū)館管
29、理系統(tǒng)包含圖書(shū)采編、讀者管理、流通和查詢等功能。該系統(tǒng)執(zhí)行時(shí),先輸入數(shù)據(jù),然后根據(jù)輸入的數(shù)據(jù)選擇執(zhí)行路徑。購(gòu)入圖書(shū)時(shí),要調(diào)用圖書(shū)采編功能進(jìn)行登記、編目,并可執(zhí)行借、還書(shū)以及查詢功能。</p><p> 3.2 系統(tǒng)模塊功能圖</p><p> 依據(jù)需求分析階段得到的數(shù)據(jù)流圖,采用軟件工程中軟件設(shè)計(jì)的概念和原理,與用戶成分協(xié)商后,在保證系統(tǒng)基本功能要求的前提下,結(jié)合系統(tǒng)新的業(yè)務(wù)流程確定系
30、統(tǒng)必須具備的所有功能,由此給出圖書(shū)管理系統(tǒng)的系統(tǒng)功能模塊圖如圖所示。</p><p> 圖3.1圖書(shū)管理系統(tǒng)模塊功能圖</p><p><b> 3.3 數(shù)據(jù)庫(kù)設(shè)計(jì)</b></p><p> 數(shù)據(jù)庫(kù),是按照數(shù)據(jù)結(jié)構(gòu)來(lái)組織、存儲(chǔ)和管理數(shù)據(jù)的倉(cāng)庫(kù),也是用于查詢大量數(shù)據(jù)的存儲(chǔ)區(qū)域。使用數(shù)據(jù)庫(kù)可以減少了數(shù)據(jù)的冗余度,從而大大地節(jié)省數(shù)據(jù)的存儲(chǔ)空間,
31、實(shí)現(xiàn)數(shù)據(jù)資源的充分共享等。此外,數(shù)據(jù)庫(kù)技術(shù)還為用戶提供了非常簡(jiǎn)便的,易于編寫(xiě)的應(yīng)用程序。近年來(lái)推出的計(jì)算機(jī)關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng),操作直觀,使用靈活,編程方便,功能強(qiáng)大,環(huán)境適應(yīng)廣泛,數(shù)據(jù)處理能力強(qiáng)。數(shù)據(jù)庫(kù)的設(shè)計(jì)是指對(duì)一個(gè)給定的應(yīng)用環(huán)境,構(gòu)造數(shù)據(jù)庫(kù)模式,建立數(shù)據(jù)庫(kù)及其應(yīng)用系統(tǒng),滿足各種用戶需求。作為信息資源開(kāi)發(fā)、管理和服務(wù)的一種有效的手段,數(shù)據(jù)庫(kù)技術(shù)的應(yīng)用已越來(lái)越廣泛,從小型的單項(xiàng)事務(wù)處理系統(tǒng)到大型的信息系統(tǒng)大都用先進(jìn)的數(shù)據(jù)庫(kù)技術(shù)來(lái)保持系統(tǒng)
32、數(shù)據(jù)的安全性、完整性和共享性。對(duì)一個(gè)實(shí)際的系統(tǒng)來(lái)說(shuō),數(shù)據(jù)庫(kù)表的設(shè)計(jì)在遵循數(shù)據(jù)庫(kù)理論的同時(shí),必須能用開(kāi)發(fā)工具來(lái)滿足用戶在各方面提出的功能要求。</p><p> 3.4 概念結(jié)構(gòu)設(shè)計(jì)</p><p> 在系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)中,先要對(duì)數(shù)據(jù)字典中存儲(chǔ)的數(shù)據(jù)進(jìn)行分析,找出各數(shù)據(jù)之間的關(guān)系,得出系統(tǒng)的關(guān)系模式。可以采用功能圖的方法來(lái)進(jìn)行數(shù)據(jù)結(jié)構(gòu)分析。</p><p> 3
33、.4.1 實(shí)體功能圖</p><p> 圖3.2借閱卡信息實(shí)體功能</p><p> 圖3.3管理員信息實(shí)體功能</p><p> 圖3.4圖書(shū)信息實(shí)體功能</p><p> 圖3.5罰單信息實(shí)體功能</p><p> 圖3.6借書(shū)信息實(shí)體功能</p><p> 3.4.2 E-R圖
34、</p><p> m m </p><p> n n</p><p> n n</p><p> m
35、 m</p><p> 1 n</p><p> 1 n</p><p><b> 圖3.7E—R圖</b></p><p><b> 3.5邏輯模型設(shè)計(jì)</b></p><p
36、> 表3—1 系統(tǒng)用戶表</p><p> 表3—2 借書(shū)信息表</p><p> 表3—3 管理員信息表</p><p> 表3—4 借閱卡信息表</p><p> 表3—5 罰單信息表</p><p> 表3—6 圖書(shū)信息表</p><p><b> 4 系統(tǒng)實(shí)
37、現(xiàn)與測(cè)試</b></p><p> 4.1 連接數(shù)據(jù)庫(kù)的實(shí)現(xiàn)</p><p><b> 圖4.1數(shù)據(jù)庫(kù)</b></p><p> 4.2 模塊功能實(shí)現(xiàn)</p><p><b> 登錄源代碼如下:</b></p><p> SET EXACT ON<
38、/p><p> SELECT 系統(tǒng)用戶表</p><p> LOCATE FOR 管理員姓名=ALLTRIM(thisform.text1.Value)</p><p> IF FOUND() AND ALLTRIM(密碼)=ALLTRIM(thisform.text2.Value) </p><p> thisform.Releas
39、e </p><p> DO FORM 主界面</p><p><b> ELSE </b></p><p> MESSAGEBOX("賬號(hào)或密碼錯(cuò)誤",48,"系統(tǒng)警告") </p><p> thisform.text1.Value=""
40、; </p><p> thisform.text2.Value="" </p><p> thisform.text1.SetFocus()</p><p><b> ENDIF</b></p><p> SET EXACT OFF</p><p><b
41、> 取消源代碼如下:</b></p><p> thisform.release</p><p><b> 添加源代碼如下:</b></p><p> append blank</p><p> go bottom </p><p> thisform.txt成員id
42、.setfocus</p><p> thisform.refresh</p><p><b> 修改源代碼如下:</b></p><p> replace 成員id with ALLTRIM(thisform.txt成員id.value)</p><p> MESSAGEBOX("信息修改成功&quo
43、t;,64,"系統(tǒng)提示")</p><p><b> 退出源代碼如下:</b></p><p> thisform.release</p><p> do form 主界面</p><p><b> 查詢?cè)创a如下:</b></p><p> s
44、elect 借書(shū)信息表 </p><p> locate for 借書(shū)id=alltrim(thisform.txt借書(shū)id2.value)</p><p> thisform.refresh</p><p><b> 圖4.2登陸界面</b></p><p><b> 圖4.3主界面</b>
45、;</p><p> 圖4.4主界面菜單設(shè)計(jì)</p><p> 圖4.5管理員基本信息表單</p><p> 圖4.6借書(shū)信息表單</p><p> 圖4.7借書(shū)信息查詢表單</p><p> 圖4.8借閱卡信息表單</p><p> 圖4.9借閱卡信息查詢表單</p>
46、<p> 圖4.10圖書(shū)信息查詢表單</p><p> 圖4.11圖書(shū)信息查詢表單</p><p><b> 圖4.12罰單表單</b></p><p> 圖4.12罰單查詢表單</p><p> 5 備份和還原數(shù)據(jù)庫(kù)</p><p> 備份和還原數(shù)據(jù)庫(kù)可以保證數(shù)據(jù)的安全性
47、,也可以保證數(shù)據(jù)的不丟失,保證系統(tǒng)的穩(wěn)定性。備份和還原數(shù)據(jù)庫(kù)是所有數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)必備的功能。備份和還原是數(shù)據(jù)庫(kù)管理員維護(hù)數(shù)據(jù)庫(kù)安全性和完整性的重要操作。備份是還原受損數(shù)據(jù)庫(kù)最容易,把意外損失降到最小的保障方法。沒(méi)有備份,所有的數(shù)據(jù)都可能丟失。備份可以防止因表或數(shù)據(jù)庫(kù)遭受破壞、介質(zhì)失效或用戶錯(cuò)誤而造成的數(shù)據(jù)災(zāi)難。還原數(shù)據(jù)庫(kù)是在意外發(fā)生后,利用備份來(lái)還原數(shù)據(jù)庫(kù)的造作。</p><p> 5.1 規(guī)劃數(shù)據(jù)庫(kù)的備份和還
48、原</p><p> 在規(guī)劃數(shù)據(jù)庫(kù)的備份和還原時(shí),必須結(jié)合兩者一起考慮。一般說(shuō)來(lái),用戶設(shè)計(jì)的操作方案將受到數(shù)據(jù)庫(kù)運(yùn)行的實(shí)際情況和可利用的數(shù)據(jù)庫(kù)備份資源的限制。但是,無(wú)論如何數(shù)據(jù)庫(kù)的價(jià)值將是放在第一位考慮的因素,根據(jù)數(shù)據(jù)的價(jià)值,用戶可以預(yù)測(cè)自己所能承受的數(shù)據(jù)損失,從而選擇合適的還原方案,并根據(jù)還原方案設(shè)計(jì)出合理的備份方案。</p><p> 一般說(shuō)來(lái),規(guī)劃數(shù)據(jù)庫(kù)備份應(yīng)該按照先面的步驟進(jìn)行
49、:</p><p> (1) 預(yù)測(cè)自己的數(shù)據(jù)庫(kù)系統(tǒng)所可能遇到的數(shù)據(jù)庫(kù)意外事故。</p><p> (2) 針對(duì)不同的意外事故一一設(shè)計(jì)對(duì)應(yīng)的還原方案。</p><p> (3) 支隊(duì)所有的還原方案設(shè)計(jì)可行的備份方案。</p><p> (4) 在一定備份資源和時(shí)間限制內(nèi)對(duì)設(shè)計(jì)的方案進(jìn)行測(cè)試。</p><p>
50、5.2 數(shù)據(jù)庫(kù)的備份</p><p> 5.2.1 備份概述</p><p> 備份就是制作數(shù)據(jù)庫(kù)結(jié)構(gòu)和數(shù)據(jù)的拷貝,這是保障數(shù)據(jù)庫(kù)系統(tǒng)安全的基礎(chǔ)性工作。用戶使用數(shù)據(jù)庫(kù)是因?yàn)橐脭?shù)據(jù)庫(kù)來(lái)管理和操作數(shù)據(jù),數(shù)據(jù)對(duì)于用戶來(lái)說(shuō)是非常寶貴的資產(chǎn)。數(shù)據(jù)是存放在計(jì)算機(jī)上的,但是即使是最可靠的硬件或軟件,也會(huì)出現(xiàn)系統(tǒng)故障和產(chǎn)品故障。所以,應(yīng)該在意外發(fā)生之前做好充分的準(zhǔn)備工作,以便在意外發(fā)生之后有相應(yīng)的
51、措施能快速地還原數(shù)據(jù)庫(kù)的運(yùn)行,并使丟失的數(shù)據(jù)量減到最小。</p><p> 可能造成數(shù)據(jù)損失的因素很多,如:誤執(zhí)行了刪除造作、破壞性病毒、自然災(zāi)害、硬件系統(tǒng)或軟件系統(tǒng)故障、盜竊等。</p><p> 5.2.2 數(shù)據(jù)庫(kù)備份設(shè)備類(lèi)型</p><p> 數(shù)據(jù)庫(kù)備份設(shè)備類(lèi)型包括磁盤(pán)備份設(shè)備、磁帶本分設(shè)備、命令管道設(shè)備備份[10]。</p><p&
52、gt;<b> 磁盤(pán)備份設(shè)備</b></p><p> 磁盤(pán)備份設(shè)備一般是硬盤(pán)或其他磁盤(pán)類(lèi)存儲(chǔ)介質(zhì)上的文件,一般按照普通的操作系統(tǒng)文件進(jìn)行管理。磁盤(pán)備份設(shè)備可以定義在數(shù)據(jù)庫(kù)服務(wù)器的本地磁盤(pán)上,也可以定義在通過(guò)網(wǎng)絡(luò)連接的遠(yuǎn)程磁盤(pán)上。</p><p><b> 磁帶設(shè)備備份</b></p><p> 磁帶設(shè)備與磁盤(pán)設(shè)備
53、的使用方式一樣,但有兩點(diǎn)區(qū)別:</p><p> 磁帶設(shè)備必須直接物理連接在運(yùn)行SQL Server服務(wù)器的計(jì)算機(jī)上;</p><p> 磁帶設(shè)備不支持遠(yuǎn)程設(shè)備備份。</p><p><b> 命名管道設(shè)備</b></p><p> 命名管道設(shè)備為使用第三方的備份軟件和設(shè)備提供了一個(gè)靈活、強(qiáng)大的通道。當(dāng)用戶使用命
54、名管道設(shè)備進(jìn)行備份和還原的操作時(shí),需要在BACKUP或RESTORE語(yǔ)句中給出客戶端應(yīng)用程序中使用的命名管道的名字。</p><p> 5.2.3 數(shù)據(jù)庫(kù)的備份</p><p> 有的系統(tǒng)要求用戶使用SQL Server 2000的工具進(jìn)行數(shù)據(jù)的備份和還原,這就要求用戶熟悉SQL Server 2000數(shù)據(jù)庫(kù)的基本使用方法[11]。本系統(tǒng)利用另一種方法,在應(yīng)用系統(tǒng)中實(shí)現(xiàn)數(shù)據(jù)的備份和還原
55、。</p><p> 在程序中備份數(shù)據(jù)庫(kù),要使用BACKUP DATABASE命令,格式如下:</p><p> BACKUP DATABASE<數(shù)據(jù)庫(kù)名>TO disk=<備份文件名></p><p> 在類(lèi)CADOConn中添加一個(gè)函數(shù)Backup(),代碼如下:</p><p> void ADOConn
56、::Backup()</p><p><b> {</b></p><p><b> //連接數(shù)據(jù)庫(kù)</b></p><p> OnInitADOConn();</p><p> _bstr_t vSQL;</p><p> vSQL = "backup
57、database Stock to disk= 'C:\\BackUp\\Stock.bak'";</p><p> ExecuteSQL(vSQL);</p><p><b> //關(guān)閉數(shù)據(jù)庫(kù)</b></p><p> ExitConnect();</p><p><b>
58、}</b></p><p> 在主界面中單擊菜單項(xiàng)“備份數(shù)據(jù)庫(kù)”,將執(zhí)行OnBackup()函數(shù),代碼如下:</p><p> void CStockDlg::OnBackup() </p><p><b> {</b></p><p> // TODO: Add your command handl
59、er code here</p><p> ADOConn m_AdoConn;</p><p> m_AdoConn.Backup();</p><p> MessageBox("備份完成");</p><p><b> }</b></p><p> 如果備份成功,
60、系統(tǒng)將提示用戶備份成功。</p><p><b> 5.3 還原數(shù)據(jù)庫(kù)</b></p><p> 當(dāng)系統(tǒng)數(shù)據(jù)庫(kù)出現(xiàn)數(shù)據(jù)事故時(shí),就需要還原數(shù)據(jù)庫(kù)中的數(shù)據(jù),把損失降到最小。這對(duì)企業(yè)和用戶來(lái)說(shuō)非常重要。還原數(shù)據(jù)庫(kù)可以最大限度的減少用戶的經(jīng)濟(jì)損失和數(shù)據(jù)損失。</p><p> 在程序中還原數(shù)據(jù)庫(kù),需要使用RESTORE DATABASE命令,格式
61、如下:</p><p> RESTORE DATABASE<數(shù)據(jù)庫(kù)名>FROM disk=<備份文件名></p><p> 在類(lèi)CADOConn中添加一個(gè)函數(shù)Restore(),代碼如下:</p><p> void ADOConn::Restore()</p><p><b> {</b>
62、;</p><p> // @@@@ 創(chuàng)建到Master數(shù)據(jù)庫(kù)的連接 </p><p><b> try</b></p><p><b> {</b></p><p> // 創(chuàng)建Connection對(duì)象</p><p> m_pConnection.Creat
63、eInstance("ADODB.Connection");</p><p> // 設(shè)置連接字符串,必須是BSTR型或者_(dá)bstr_t類(lèi)型</p><p> _bstr_t strConnect = "Provider=SQLOLEDB; Server=ntserver;Database=master; uid=sa; pwd=sa;";<
64、;/p><p> m_pConnection->Open(strConnect,"","",adModeUnknown);</p><p><b> }</b></p><p><b> // 捕捉異常</b></p><p> catch(_com
65、_error e)</p><p><b> {</b></p><p><b> // 顯示錯(cuò)誤信息</b></p><p> AfxMessageBox(e.Description());</p><p><b> }</b></p><p>
66、; _bstr_t vSQL;</p><p> vSQL = "restore database Stock from disk= 'C:\\BackUp\\Stock.bak'";</p><p> m_pConnection->Execute(vSQL,NULL,adCmdText);</p><p><b
67、> }</b></p><p> 在主界面中單擊菜單項(xiàng)“還原數(shù)據(jù)庫(kù)”,將執(zhí)行OnBackup()函數(shù),代碼如下:</p><p> void CStockDlg::OnRestore() </p><p><b> {</b></p><p> // TODO: Add your comman
68、d handler code here</p><p> ADOConn m_AdoConn;</p><p> m_AdoConn.Restore();</p><p> MessageBox("還原完成");</p><p><b> }</b></p><p>
69、 如果用戶還原完成,系統(tǒng)將自動(dòng)彈出對(duì)話框提示用戶還原完成。</p><p><b> 結(jié) 論</b></p><p> 通過(guò)這次課程設(shè)計(jì)讓我對(duì)前面學(xué)過(guò)的許多課程有了更為深刻的理解,</p><p> 也是我對(duì)這幾年所學(xué)的東西的一個(gè)綜合體現(xiàn)。然而這次設(shè)計(jì)讓我感受頗深,讓我真正體會(huì)到了在整個(gè)過(guò)程給我?guī)?lái)的無(wú)奈與快樂(lè)。綜合起來(lái),主要體現(xiàn)在以
70、下幾個(gè)方面:</p><p> 首先,急于求成的心情給我?guī)?lái)了很大的困難。以前我注重是編碼過(guò)程,以為只要能把最后的功能實(shí)現(xiàn)了就可以了,所以一開(kāi)始我就稍微理了一下思緒就動(dòng)起手來(lái)編碼,我原以為很快就能完成此次任務(wù),可萬(wàn)萬(wàn)沒(méi)想到,編了二三天,自已就陷入了泥潭,進(jìn)退兩難,但后來(lái)面臨的問(wèn)題只有重來(lái),這真是給了我很大的打擊,這樣的反復(fù)讓我進(jìn)行了幾次。后來(lái)我終于沉住氣,吸取前幾次的教訓(xùn),嚴(yán)格的按照“管理信息系統(tǒng)”“軟件開(kāi)發(fā)工
71、具”所提到開(kāi)發(fā)管理信息系統(tǒng)所用的方法中都把系統(tǒng)規(guī)劃和系統(tǒng)分析放在極為重要的位置。認(rèn)真細(xì)致地對(duì)開(kāi)發(fā)過(guò)程進(jìn)行了規(guī)劃和分析,才逐漸弄清了整個(gè)系統(tǒng)的流程,把握整體布局,明確了系統(tǒng)的基本功能,做好業(yè)務(wù)流程圖、數(shù)據(jù)流圖的情況下,在設(shè)計(jì)好系統(tǒng)各主要部分,將一些細(xì)節(jié)問(wèn)題考慮周全后才開(kāi)始動(dòng)手進(jìn)行開(kāi)發(fā),使得后來(lái)的工作才得以順利進(jìn)行。其次,在編程語(yǔ)言的熟悉程度也讓我對(duì)整個(gè)開(kāi)發(fā)過(guò)程受到了一定的阻礙。因?yàn)橐郧爸华?dú)立編制過(guò)一些微型程序,而那些程序涉及面比較窄,實(shí)現(xiàn)
72、的功能相當(dāng)有限,從而要求對(duì)語(yǔ)言的熟悉程序不高,然而這次很多都不同,這次設(shè)計(jì),不但難度大,而且還要求對(duì)一些算法比較熟悉,否則將延遲工作速度,必須停下來(lái)再去學(xué)習(xí),后因時(shí)間問(wèn)題,本系統(tǒng)</p><p><b> 致 謝</b></p><p> 本設(shè)計(jì)的完成是在我們的導(dǎo)師**的細(xì)心指導(dǎo)下進(jìn)行的。在每次設(shè)計(jì)遇到問(wèn)題時(shí)老師不辭辛苦的講解才使得我的設(shè)計(jì)順利的進(jìn)行。從設(shè)計(jì)的選
73、題到資料的搜集直至最后設(shè)計(jì)的修改的整個(gè)過(guò)程中,花費(fèi)了老師們很多的寶貴時(shí)間和精力,在此向?qū)煴硎局孕牡馗兄x!導(dǎo)師嚴(yán)謹(jǐn)?shù)闹螌W(xué)態(tài)度,開(kāi)拓進(jìn)取的精神和高度的責(zé)任心都將使學(xué)生受益終生!</p><p> 感謝學(xué)校,給我們提供了必要的實(shí)驗(yàn)器材,提供了很大的方便。</p><p> 感謝我的室友,在我遇到困難時(shí)都能給與及時(shí)的幫助。并指出我設(shè)計(jì)上的誤區(qū),使我能及時(shí)的發(fā)現(xiàn)問(wèn)題把設(shè)計(jì)順利的進(jìn)行下去,沒(méi)有你
74、們的幫助我不可能這樣順利地完成此次設(shè)計(jì),在此表示深深的謝意。</p><p><b> 參 考 文 獻(xiàn)</b></p><p> 1 胡明.Visual Foxpro中表單之間的參數(shù)傳遞[J]. 電腦學(xué)習(xí), 2009,(01)</p><p> 2 張景莉.關(guān)于Visual FoxPro教學(xué)的思考[J]. 引進(jìn)與咨詢, 2004,(02)
75、</p><p> 3 陳瀟.Visual FoxPro獲取數(shù)據(jù)庫(kù)中數(shù)據(jù)的幾種方法[J].科技信息(學(xué)術(shù)研究), 2008, 30 </p><p> 4 Jay K. Harness. Total thyroidectomy: Complications and technique. [J].World Journal of Surgery,1986,10(5)</p>
76、<p> 5 王珊,陳紅.?dāng)?shù)據(jù)庫(kù)系統(tǒng)原理教程.[M]北京:清華大學(xué)出版社.2002(7) </p><p> 6任小康,茍平章.Visual FoxPro程序設(shè)計(jì).[M]北京: 科學(xué)出版社, 2008,292</p><p> 7 曾慶森,王宇.Visual FoxPro程序設(shè)計(jì)基礎(chǔ).[M]北京: 北京郵電學(xué)院出版社, 2008,292</p><p&
77、gt; 8 何振林,張選芳.Visual FoxPro程序計(jì)實(shí)驗(yàn)指導(dǎo)教程.[M]北京: 高等教育出版社, 2008,184</p><p> 9 史濟(jì)民.FoxPro及其應(yīng)用系統(tǒng)開(kāi)發(fā).[M]北京:清華大學(xué)出版社1998,338 10 Janice L. Pasieka. The incidence of bilateral well-differentiated thyroid cancer found at
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--圖書(shū)管理系統(tǒng)的數(shù)據(jù)庫(kù)設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--- 圖書(shū)管理系統(tǒng)
- 圖書(shū)管理系統(tǒng)—數(shù)據(jù)庫(kù)課程設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)-圖書(shū)管理系統(tǒng)
- 圖書(shū)管理系統(tǒng)數(shù)據(jù)庫(kù)課程設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--圖書(shū)管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)---圖書(shū)管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)圖書(shū)管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)----圖書(shū)管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)---圖書(shū)管理系統(tǒng)
- 圖書(shū)管理系統(tǒng)數(shù)據(jù)庫(kù)課程設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)——圖書(shū)管理系統(tǒng)
- 數(shù)據(jù)庫(kù)原理課程設(shè)計(jì)---圖書(shū)管理系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)---圖書(shū)管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)---圖書(shū)管理系統(tǒng)數(shù)據(jù)庫(kù)管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)--圖書(shū)管理
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告---圖書(shū)管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告----圖書(shū)管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告---圖書(shū)管理系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告---圖書(shū)管理系統(tǒng)
評(píng)論
0/150
提交評(píng)論