版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、數(shù)據(jù)庫(kù)原理及應(yīng)用課程設(shè)計(jì)2013 2014學(xué)年第*學(xué)期設(shè)計(jì)題目: 圖書(shū)館圖書(shū)借閱系統(tǒng) 院 (系) 計(jì)算機(jī)科學(xué)與信息工程學(xué)院 專 業(yè) 計(jì)算機(jī)科學(xué)與技術(shù) 班 級(jí) 學(xué)號(hào) 學(xué)生姓名 設(shè)計(jì)時(shí)間 指導(dǎo)教師 提交日期 上海應(yīng)用技術(shù)學(xué)院課程設(shè)計(jì)任務(wù)書(shū)課程名稱數(shù)據(jù)庫(kù)原理及應(yīng)用課程代碼 設(shè)計(jì)題目圖書(shū)館圖書(shū)借閱系統(tǒng)設(shè)計(jì)時(shí)間系(院)計(jì)算機(jī)科學(xué)與信息工程學(xué)院專業(yè)計(jì)算機(jī)科學(xué)與技術(shù)班級(jí)一、 課程設(shè)計(jì)任務(wù)(條件)、具體技術(shù)參數(shù)(指標(biāo)) 通過(guò)兩周的課程設(shè)計(jì),要求學(xué)生加深對(duì)數(shù)據(jù)庫(kù)技術(shù)相關(guān)理論的理解,增強(qiáng)動(dòng)手能力,掌握使用現(xiàn)行較為流行的數(shù)據(jù)庫(kù)理論和數(shù)據(jù)庫(kù)開(kāi)發(fā)工具進(jìn)行數(shù)據(jù)庫(kù)管理操作(如建庫(kù)、建立完整性約束,對(duì)數(shù)據(jù)庫(kù)中數(shù)據(jù)進(jìn)行查詢,更
2、改等操作)的方法;具體應(yīng)用方面,要求學(xué)生對(duì)SQL語(yǔ)言要有較深入的了解和掌握,對(duì)數(shù)據(jù)庫(kù)的管理(主要是安全性方面)要有一定程度的了解。 本次課程設(shè)計(jì)包含兩大部分內(nèi)容:設(shè)計(jì)軟件和設(shè)計(jì)報(bào)告。其中設(shè)計(jì)軟件在題目驗(yàn)收時(shí)由指導(dǎo)教師檢查,具體內(nèi)容不同,系統(tǒng)要求不同;設(shè)計(jì)報(bào)告作為書(shū)面材料提交。二、對(duì)課程設(shè)計(jì)成果的要求(包括課程設(shè)計(jì)說(shuō)明書(shū)、圖紙、圖表、實(shí)物等軟硬件要求)1、每位同學(xué)提交設(shè)計(jì)的數(shù)據(jù)庫(kù)和應(yīng)用程序相關(guān)文檔,并提交一份課程設(shè)計(jì)報(bào)告,內(nèi)容要包含設(shè)計(jì)題目、設(shè)計(jì)目的、需求分析、系統(tǒng)功能描述、系統(tǒng)E-R圖、關(guān)系模式設(shè)計(jì)、各數(shù)據(jù)庫(kù)表的建立(代碼)、系統(tǒng)各功能實(shí)現(xiàn)(代碼)、系統(tǒng)功能評(píng)價(jià)等。2、課程設(shè)計(jì)報(bào)告電子版排版順
3、序: 任務(wù)書(shū) 正文 附錄(若有)。3、每個(gè)同學(xué)要針對(duì)自己的系統(tǒng),寫(xiě)出對(duì)設(shè)計(jì)技術(shù)的分析、對(duì)系統(tǒng)的測(cè)試、在編碼和調(diào)試過(guò)程中遇到的問(wèn)題和解決方法等。4、課程設(shè)計(jì)報(bào)告最后寫(xiě)出本次設(shè)計(jì)的心得體會(huì)。三、課程設(shè)計(jì)工作進(jìn)度計(jì)劃1、課程設(shè)計(jì)第1周第1天:布置任務(wù)、交代課題、安排設(shè)計(jì)事宜2、第1周第2天:調(diào)研,書(shū)籍和資料的準(zhǔn)備3、第1周第3天-第5天:系統(tǒng)分析和設(shè)計(jì)4、第2周第1天-第3天:編程和測(cè)試,撰寫(xiě)設(shè)計(jì)報(bào)告5、第2周第4天-第5天:課程設(shè)計(jì)檢查,交設(shè)計(jì)報(bào)告4、 主要參考資料1數(shù)據(jù)庫(kù)原理及應(yīng)用錢雪忠 主編 北京郵電大學(xué)出版社 2010.6 第三版2數(shù)據(jù)庫(kù)原理及技術(shù)課程設(shè)計(jì)錢雪忠 羅海馳 陳國(guó)俊 編著 清華大
4、學(xué)出版社 2009.23數(shù)據(jù)庫(kù)原理及應(yīng)用實(shí)驗(yàn)指導(dǎo)錢學(xué)忠 陳國(guó)俊 等編著 北京郵電大學(xué)出版社 2010.7指導(dǎo)教師(簽名): 教研室主任(簽名): 2014年 月 日 2014 年月 日目錄第一章 綜述11.1 設(shè)計(jì)的目的及要求11.1.1 目的11.1.2 要求11.2 設(shè)計(jì)內(nèi)容說(shuō)明11.2.1 項(xiàng)目背景11.2.2 設(shè)計(jì)目的11.2.3 開(kāi)發(fā)環(huán)境2第二章 設(shè)計(jì)內(nèi)容32.1 系統(tǒng)需求分析32.1.1 系統(tǒng)概述32.1.2 需求分析32.1.3 系統(tǒng)功能32.2 概念結(jié)構(gòu)設(shè)計(jì)42.2.1 系統(tǒng)局部E-R模型設(shè)計(jì)42.2.2 系統(tǒng)全局E-R模型設(shè)計(jì)62.3 邏輯結(jié)構(gòu)設(shè)計(jì)62.4 物理結(jié)構(gòu)設(shè)計(jì)72.
5、4.1 確定數(shù)據(jù)庫(kù)的存儲(chǔ)結(jié)構(gòu)72.4.2 存取方法和優(yōu)化方法72.5 數(shù)據(jù)庫(kù)的實(shí)施82.5.1 各個(gè)實(shí)體屬性的說(shuō)明82.5.2 建表92.5.3 數(shù)據(jù)庫(kù)關(guān)系圖112.5.4 數(shù)據(jù)入庫(kù)122.6 數(shù)據(jù)庫(kù)的運(yùn)行與維護(hù)132.6.1 數(shù)據(jù)庫(kù)的運(yùn)行132.6.2 數(shù)據(jù)庫(kù)的維護(hù)142.7 數(shù)據(jù)庫(kù)中存儲(chǔ)過(guò)程的創(chuàng)建與測(cè)試142.7.1 讀者152.7.2 人事管理員172.7.3 圖書(shū)管理員21第三章 結(jié)論與總結(jié)25參考文獻(xiàn)25附錄25第1章 綜述1.1 設(shè)計(jì)的目的及要求1.1.1 目的 1.鞏固加深對(duì)數(shù)據(jù)庫(kù)基本知識(shí)的理解,提高綜合運(yùn)用課程知識(shí)的能力。 2.掌握數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)的基本內(nèi)容、方法和步驟,培養(yǎng)規(guī)范
6、化使用軟技術(shù)設(shè)計(jì)的能力。 3.深刻領(lǐng)會(huì)與掌握數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)規(guī)范化設(shè)計(jì)的過(guò)程和步驟。 4.掌握使用計(jì)算機(jī)技能和相關(guān)參考資料的技能,提高綜合運(yùn)用多種技能的能力,以及理論與實(shí)踐相結(jié)合進(jìn)行數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)的能力。 5.提高開(kāi)發(fā)和設(shè)計(jì)的創(chuàng)新能力。1.1.2 要求 要求加深對(duì)數(shù)據(jù)庫(kù)技術(shù)相關(guān)理論的理解,掌握使用現(xiàn)行較為流行的數(shù)據(jù)庫(kù)理論和數(shù)據(jù)庫(kù)設(shè)計(jì)方法進(jìn)行數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)的方法;具體應(yīng)用方面:要求學(xué)生對(duì)數(shù)據(jù)庫(kù)設(shè)計(jì)步驟中的需求分析、概念結(jié)構(gòu)設(shè)計(jì)、邏輯結(jié)構(gòu)設(shè)計(jì)有進(jìn)一步的理解和應(yīng)用;設(shè)計(jì)的最終結(jié)果為學(xué)生設(shè)計(jì)一個(gè)具有較完善功能和一定規(guī)模的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)。1.2 設(shè)計(jì)內(nèi)容說(shuō)明 1.2.1 項(xiàng)目背景 圖書(shū)館圖書(shū)借閱
7、管理系統(tǒng)主要為不同身份的人提供相對(duì)應(yīng)的服務(wù)。主要包含讀者借書(shū)、還書(shū)服務(wù)以及個(gè)人信息與圖書(shū)信息的管理幾個(gè)方面的內(nèi)容。主要是為了實(shí)現(xiàn)圖書(shū)流通的功能。1.2.2 設(shè)計(jì)目的方便借書(shū)者借書(shū)和還書(shū),實(shí)現(xiàn)如下主要功能: 1.圖書(shū)借閱:完成一次借書(shū)、還書(shū)的過(guò)程。 2.圖書(shū)管理:添加新書(shū)、更新圖書(shū)信息、銷毀圖書(shū)的過(guò)程。 3.用戶管理:添加用戶、更新用戶信息、注銷用戶的過(guò)程。1.2.3 開(kāi)發(fā)環(huán)境 1.數(shù)據(jù)庫(kù)管理系統(tǒng):SQL Server 2005 2.運(yùn)行環(huán)境:Windows XP第2章 設(shè)計(jì)內(nèi)容2.1 系統(tǒng)需求分析2.1.1 系統(tǒng)概述 設(shè)計(jì)本系統(tǒng)模擬學(xué)校圖書(shū)管借閱管理系統(tǒng)的內(nèi)容,包括人事管理員對(duì)借閱讀者人員的管
8、理、圖書(shū)管理員對(duì)圖書(shū)及借閱記錄的管理、讀者查詢、借閱與歸還書(shū)籍等多個(gè)功能。2.1.2 需求分析 1.讀者隨時(shí)可查詢出可借閱圖書(shū)的詳細(xì)內(nèi)容,如索取號(hào),正題名,種類編號(hào),責(zé)任者,出版社,出版日期,價(jià)格,頁(yè)卷數(shù),標(biāo)準(zhǔn)編號(hào),是否借出等,這樣便于讀者借書(shū)。 2.讀者可隨時(shí)查出自己的借閱情況,如讀者證號(hào),索取號(hào),借閱日期,應(yīng)還日期等。 3.讀者可進(jìn)行借閱、歸還和續(xù)借(相當(dāng)于歸還后重新借閱)書(shū)籍。借閱時(shí)要帶上證件(必須包含讀者證號(hào)),登記借閱時(shí)間和歸還時(shí)間。 3.人事管理員可隨時(shí)查出讀者的信息,如讀者證號(hào),姓名,性別,種類編號(hào),單位,住址,電話,登記日期,備注等。 4.人事管理員可進(jìn)行對(duì)讀者信息進(jìn)行操作,如
9、添加、更新與刪除等。 5.圖書(shū)管理員可進(jìn)行對(duì)圖書(shū)信息進(jìn)行操作,如添加、更新與刪除等。 6.圖書(shū)管理員可進(jìn)行對(duì)讀者借閱記錄的添加與刪除操作。2.1.3 系統(tǒng)功能1.系統(tǒng)功能說(shuō)明 (1)讀者: 讀者借閱:據(jù)正題名查詢圖書(shū)。 讀者借閱:據(jù)索取號(hào)查詢圖書(shū)。 讀者借閱:據(jù)責(zé)任者查詢圖書(shū)。 讀者借閱:據(jù)出版社查詢圖書(shū)。 讀者借閱情況:據(jù)讀者證號(hào)查詢。 (2)人事管理員: 人事管理員:據(jù)姓名查詢?nèi)藛T信息。 人事管理員:據(jù)讀者證號(hào)查詢?nèi)藛T信息。 人事管理員:添加人員信息。 人事管理員:更新人員信息。 人事管理員:據(jù)讀者證號(hào)刪除人員信息。 (3)圖書(shū)管理員: 圖書(shū)管理員:添加圖書(shū)信息。 圖書(shū)管理員:更新圖書(shū)信息
10、。 圖書(shū)管理員:據(jù)索取號(hào)刪除圖書(shū)信息。 圖書(shū)管理員:添加借閱記錄。 圖書(shū)管理員:刪除借閱記錄。 2.系統(tǒng)功能模塊圖 根據(jù)系統(tǒng)概述和功能說(shuō)明,畫(huà)出該系統(tǒng)的功能模塊圖,如圖6-1所示。圖6-1 系統(tǒng)功能模塊圖2.2 概念結(jié)構(gòu)設(shè)計(jì)2.2.1 系統(tǒng)局部E-R模型設(shè)計(jì) 根據(jù)系統(tǒng)的需求分析及系統(tǒng)的功能說(shuō)明,設(shè)計(jì)各個(gè)實(shí)體及其屬性的E-R模型(即系統(tǒng)總體的局部E-R模型) 1.實(shí)體Reader及其屬性的E-R模型如圖6-2所示。圖6-2 Reader及其屬性 2.實(shí)體ReaderCategory及其屬性的E-R模型如圖6-3所示。 圖6-3 ReaderCategory及其屬性 3.實(shí)體Book及其屬性的E-
11、R模型如圖6-4所示。 圖6-4 Book及其屬性 4.實(shí)體BookCategory 及其屬性的E-R模型如圖6-5所示。圖6-5 BookCategory 及其屬性 5.關(guān)系Borrow與實(shí)體間的關(guān)系及其屬性的E-R模型如圖6-6所示。圖6-6 Borrow與實(shí)體間的關(guān)系及其屬性2.2.2 系統(tǒng)全局E-R模型設(shè)計(jì) 根據(jù)系統(tǒng)的需求分析、系統(tǒng)的功能說(shuō)明及各個(gè)實(shí)體及其屬性的E-R(即系統(tǒng)總體的局部E-R),設(shè)計(jì)系統(tǒng)全局的E-R模型如圖6-7所示。圖6-7 系統(tǒng)全局的E-R模型 2.3 邏輯結(jié)構(gòu)設(shè)計(jì) 將概念結(jié)構(gòu)設(shè)計(jì)階段設(shè)計(jì)好的系統(tǒng)全局的E-R模型轉(zhuǎn)換為關(guān)系模型,如下所示(加粗劃線為關(guān)系關(guān)鍵字(即主碼
12、): Reader(讀者證號(hào),姓名,性別,種類編號(hào),單位,住址,電話,登記日期,備注) ReaderCategory(種類編號(hào),種類名稱,允借數(shù)量,借閱期限,罰金公式,備注) Book(索取號(hào),正題名,種類編號(hào),責(zé)任者,出版社,出版日期,價(jià)格,頁(yè)卷數(shù),標(biāo)準(zhǔn)編號(hào),是否借出,備注) BookCategory(種類編號(hào),種類名稱,備注) Borrow(讀者證號(hào),索取號(hào),借閱日期,應(yīng)還日期,備注)2.4 物理結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫(kù)的物理設(shè)計(jì)就是為一個(gè)給定的邏輯數(shù)據(jù)模型選取一個(gè)最適合應(yīng)用要求的物理結(jié)構(gòu)的過(guò)程。物理結(jié)構(gòu)設(shè)計(jì)階段實(shí)現(xiàn)的是數(shù)據(jù)庫(kù)系統(tǒng)的內(nèi)模式,它的質(zhì)量直接決定了整個(gè)系統(tǒng)的性能。因此在確定數(shù)據(jù)庫(kù)的存儲(chǔ)結(jié)構(gòu)
13、和存取方法之前,對(duì)數(shù)據(jù)庫(kù)系統(tǒng)所支持的事務(wù)要進(jìn)行仔細(xì)分析,獲得優(yōu)化數(shù)據(jù)庫(kù)物理設(shè)計(jì)的參數(shù)數(shù)據(jù)庫(kù)的物理設(shè)計(jì)通常分為兩步:(1)確定數(shù)據(jù)庫(kù)的物理結(jié)構(gòu),在關(guān)系數(shù)據(jù)庫(kù)中主要指存取方法和存取結(jié)構(gòu); (2)對(duì)物理結(jié)構(gòu)進(jìn)行評(píng)價(jià),評(píng)價(jià)的重點(diǎn)是時(shí)間和空間效率。2.4.1 確定數(shù)據(jù)庫(kù)的存儲(chǔ)結(jié)構(gòu) 由于本系統(tǒng)的數(shù)據(jù)庫(kù)建立不是很大,所以數(shù)據(jù)存儲(chǔ)采用的是一個(gè)磁盤(pán)的一個(gè)分區(qū)。2.4.2 存取方法和優(yōu)化方法存取方法是快速存取數(shù)據(jù)庫(kù)中數(shù)據(jù)的技術(shù)。數(shù)據(jù)庫(kù)管理系統(tǒng)一般都是提供多種存取方法。常用的存取方法有三類。第一類是索引方法,目前主要是B+樹(shù)索引方法;第二類是聚簇方法;第三類是HASH方法。數(shù)據(jù)庫(kù)的索引類似書(shū)的目錄。在書(shū)中,目錄允許
14、用戶不必瀏覽全書(shū)就能迅速地找到所需要的位置。在數(shù)據(jù)庫(kù)中,索引也允許應(yīng)用程序迅速找到表中的數(shù)據(jù),而不必掃描整個(gè)數(shù)據(jù)庫(kù)。在書(shū)中,目錄就是內(nèi)容和相應(yīng)頁(yè)號(hào)的清單。在數(shù)據(jù)庫(kù)中,索引就是表中數(shù)據(jù)和相應(yīng)存儲(chǔ)位置的列表。使用索引可以大大減少數(shù)據(jù)的查詢時(shí)間。但需要注意的是索引雖然能加速查詢的速度,但是為數(shù)據(jù)庫(kù)中的每張表都設(shè)置大量的索引并不是一個(gè)明智的做法。這是因?yàn)樵黾铀饕灿衅洳焕囊幻妫菏紫?,每個(gè)索引都將占用一定的存儲(chǔ)空間,如果建立聚簇索引(會(huì)改變數(shù)據(jù)物理存儲(chǔ)位置的一種索引),占用需要的空間就會(huì)更大;其次,當(dāng)對(duì)表中的數(shù)據(jù)進(jìn)行增加、刪除和修改的時(shí)候,索引也要?jiǎng)討B(tài)地維護(hù),這樣就降低了數(shù)據(jù)的更新速度。2.5 數(shù)據(jù)庫(kù)
15、的實(shí)施2.5.1 各個(gè)實(shí)體屬性的說(shuō)明 詳細(xì)說(shuō)明邏輯結(jié)構(gòu)設(shè)計(jì)階段中轉(zhuǎn)化好的關(guān)系模型轉(zhuǎn)中每個(gè)實(shí)體屬性的名稱、數(shù)據(jù)類型、允許空、約束條件及關(guān)系。 1. 實(shí)體Reader及其屬性的說(shuō)明如表6-8所示。表6-8 實(shí)體Reader及其屬性的說(shuō)明列名數(shù)據(jù)類型允許空約束關(guān)系(外鍵)讀者證號(hào)char(10)主鍵姓名varchar(50)性別char(2)默認(rèn):(男);(性別=男 OR 性別=女)種類編號(hào)int默認(rèn):(1)外鍵單位varchar(50)住址varchar(50)電話varchar(50)登記日期datetime備注text 2.實(shí)體ReaderCategory及其屬性的說(shuō)明如表6-9所示。表6-9
16、 實(shí)體ReaderCategory及其屬性的說(shuō)明列名數(shù)據(jù)類型允許空約束關(guān)系(外鍵)種類編號(hào)int主鍵種類名稱varchar(50)允借數(shù)量int借閱期限int默認(rèn):(30)罰金公式real默認(rèn):(0.1)備注text 3.實(shí)體Book及其屬性的說(shuō)明如表6-10所示。表6-10 實(shí)體Book及其屬性的說(shuō)明列名數(shù)據(jù)類型允許空約束關(guān)系(外鍵)索取號(hào)varchar(20)主鍵正題名varchar(50)種類編號(hào)int外鍵責(zé)任者varchar(50)出版社varchar(50)出版日期datetime價(jià)格real頁(yè)卷數(shù)int標(biāo)準(zhǔn)編號(hào)varchar(50)是否借出char(2)默認(rèn):(否);(是否借出=是
17、 OR 是否借出=否)備注text 4.實(shí)體BookCategory及其屬性的說(shuō)明如表6-11所示。表6-11 實(shí)體BookCategory及其屬性列名數(shù)據(jù)類型允許空約束關(guān)系(外鍵)種類編號(hào)int主鍵種類名稱varchar(50)備注text 5.關(guān)系Borrow及其屬性的說(shuō)明如表6-12所示。表6-12 關(guān)系Borrow及其屬性的說(shuō)明列名數(shù)據(jù)類型允許空約束關(guān)系(外鍵)讀者證號(hào)char(10)外鍵索取號(hào)varchar(20)外鍵借閱日期datetime應(yīng)還日期datetime備注text2.5.2 建表 在SQL Server 2005中創(chuàng)建數(shù)據(jù)庫(kù)“DB課程設(shè)計(jì)”,并根據(jù)各個(gè)實(shí)體屬性說(shuō)明的實(shí)體
18、屬性的名稱、數(shù)據(jù)類型、允許空、約束條件及關(guān)系建表。 1.創(chuàng)建Reader表如圖6-13所示。圖6-13 Reader表 2.創(chuàng)建ReaderCategory表如圖6-14所示。圖6-14 ReaderCategory表 3.創(chuàng)建Book表如圖6-15所示。圖6-15 Book表 4.創(chuàng)建BookCategory表如圖6-16所示。 圖6-16 BookCategory表 5.創(chuàng)建Borrow表如圖6-17所示。圖6-17 Borrow表2.5.3 數(shù)據(jù)庫(kù)關(guān)系圖 在數(shù)據(jù)庫(kù)“DB課程設(shè)計(jì)”中新建數(shù)據(jù)庫(kù)關(guān)系圖,選中新建的五張表Reader表ReaderCategory表、Book表、BookCate
19、gory表與Borrow表,得到五張表的關(guān)系如圖6-18。圖6-18 數(shù)據(jù)庫(kù)關(guān)系圖2.5.4 數(shù)據(jù)入庫(kù) 建表并檢查無(wú)誤之后,將事先準(zhǔn)備的好的數(shù)據(jù)直接輸入到各個(gè)表中。 1.Reader表數(shù)據(jù)輸入情況如圖6-19所示。圖6-19 Reader表數(shù)據(jù)輸入情況 2.ReaderCategory表數(shù)據(jù)輸入情況如圖6-20所示。圖6-20 ReaderCategory表數(shù)據(jù)輸入情況 3.Book表數(shù)據(jù)輸入情況如圖6-21所示。圖6-21 Book表數(shù)據(jù)輸入情況 4.BookCategory表數(shù)據(jù)輸入情況如圖6-22所示。圖6-22 BookCategory表數(shù)據(jù)輸入情況 5.Borrow表數(shù)據(jù)輸入情況如圖
20、6-23所示。圖6-23 Borrow表數(shù)據(jù)輸入情況2.6 數(shù)據(jù)庫(kù)的運(yùn)行與維護(hù)2.6.1 數(shù)據(jù)庫(kù)的運(yùn)行當(dāng)一小部分?jǐn)?shù)據(jù)輸入數(shù)據(jù)庫(kù)后,就可以開(kāi)始對(duì)數(shù)據(jù)庫(kù)系統(tǒng)進(jìn)行聯(lián)合調(diào)試,這一階段要實(shí)際運(yùn)行數(shù)據(jù)庫(kù)應(yīng)用程序,執(zhí)行對(duì)數(shù)據(jù)庫(kù)的各種操作,由于沒(méi)有應(yīng)用程序,所以只有通過(guò)SQL語(yǔ)言直接在數(shù)據(jù)庫(kù)中執(zhí)行對(duì)數(shù)據(jù)庫(kù)的各種操作。通過(guò)在SQL Server 2005的查詢分析器中輸入相應(yīng)的SQL語(yǔ)句,就可以得到相應(yīng)的結(jié)果,具體如下所示: 1.輸入SELECT語(yǔ)句: SELECT * FROM Book WHERE 索取號(hào)=TP392/259.2 2.對(duì)比輸出結(jié)果與表中內(nèi)容的一致性。SQL查詢查詢的結(jié)果如圖6-24所示,表中
21、實(shí)際內(nèi)容如圖6-25所示。圖6-24 SQL查詢查詢的結(jié)果圖6-25 表中實(shí)際內(nèi)容2.6.2 數(shù)據(jù)庫(kù)的維護(hù) 數(shù)據(jù)庫(kù)試運(yùn)行合格后,數(shù)據(jù)庫(kù)開(kāi)發(fā)工作就基本完成,即可投入正式運(yùn)行了。但是,由于應(yīng)用環(huán)境在不斷變化,數(shù)據(jù)庫(kù)運(yùn)行過(guò)程中物理存儲(chǔ)也會(huì)不斷變化,對(duì)數(shù)據(jù)庫(kù)設(shè)計(jì)進(jìn)行評(píng)價(jià)、調(diào)整、修改等維護(hù)工作是一個(gè)長(zhǎng)期的任務(wù),也是設(shè)計(jì)工作的繼續(xù)和提高。在數(shù)據(jù)庫(kù)運(yùn)行階段,對(duì)數(shù)據(jù)庫(kù)經(jīng)常性的維護(hù)工作主要是由DBA完成的,包括: 1.數(shù)據(jù)庫(kù)的轉(zhuǎn)儲(chǔ)和恢復(fù)DBA要針對(duì)不同的應(yīng)用要求制定不同的轉(zhuǎn)儲(chǔ)計(jì)劃,一保證一旦發(fā)生故障能盡快將數(shù)據(jù)庫(kù)恢復(fù)到某種一致的狀態(tài),并盡可能減少對(duì)數(shù)據(jù)庫(kù)的破壞。 2.數(shù)據(jù)庫(kù)的安全性、完整性控制DBA根據(jù)實(shí)際情況
22、修改原有的安全性控制和數(shù)據(jù)庫(kù)的完整性約束條件,以滿足用戶要求。 3.數(shù)據(jù)庫(kù)性能的監(jiān)督、分析和改造在數(shù)據(jù)庫(kù)運(yùn)行過(guò)程中,DBA必須監(jiān)督系統(tǒng)運(yùn)行,對(duì)監(jiān)測(cè)數(shù)據(jù)進(jìn)行分析,找出改進(jìn)系統(tǒng)性能的方法。 4.數(shù)據(jù)庫(kù)的重組織與重構(gòu)造數(shù)據(jù)庫(kù)運(yùn)行一段時(shí)間后,由于記錄不斷增、刪、改,會(huì)使數(shù)據(jù)庫(kù)的物理存儲(chǔ)情況變壞,降低了數(shù)據(jù)的存取效率,數(shù)據(jù)庫(kù)性能下降,這時(shí)DBA就要對(duì)數(shù)據(jù)庫(kù)進(jìn)行重組織或部分重組織。2.7 數(shù)據(jù)庫(kù)中存儲(chǔ)過(guò)程的創(chuàng)建與測(cè)試由于該圖書(shū)館借閱管理系統(tǒng)的操作無(wú)非就是人事管理員對(duì)讀者人員信息的管理、圖書(shū)管理員對(duì)圖書(shū)及借閱記錄的管理、讀者查詢、借閱與歸還書(shū)籍,這些操作類型都是比較固定的,因此可利用存儲(chǔ)過(guò)程將這些固定的操作
23、集中起來(lái),由SQL Server數(shù)據(jù)庫(kù)服務(wù)器來(lái)執(zhí)行。該圖書(shū)館管理系統(tǒng)創(chuàng)建了人事管理員、圖書(shū)管理員以及讀者三個(gè)單位不同類型的各個(gè)操作的存儲(chǔ)過(guò)程,并對(duì)其進(jìn)行了正確性測(cè)試。2.7.1 讀者 1.(1)讀者借閱:據(jù)正題名查詢圖書(shū)。 /*讀者借閱_據(jù)正題名查詢圖書(shū)*/CREATE PROCEDURE 讀者借閱_據(jù)正題名查詢圖書(shū)B(niǎo)OOK_NAME varchar(50) AS SELECT *FROM BookWHERE 正題名=BOOK_NAMEGO (2)測(cè)試:過(guò)程據(jù)正題名查詢圖書(shū)測(cè)試結(jié)果如圖6-26所示。EXECUTE 讀者借閱_據(jù)正題名查詢圖書(shū)B(niǎo)OOK_NAME=離散數(shù)學(xué)圖6-26 過(guò)程據(jù)正題名查
24、詢圖書(shū)測(cè)試結(jié)果 2.(1)讀者借閱:據(jù)索取號(hào)查詢圖書(shū)。 /*讀者借閱_據(jù)索取號(hào)查詢圖書(shū)*/CREATE PROCEDURE 讀者借閱_據(jù)索取號(hào)查詢圖書(shū)CALL_NUMBER varchar(20) AS SELECT *FROM BookWHERE 索取號(hào)=CALL_NUMBERGO (2)測(cè)試:過(guò)程據(jù)索取號(hào)查詢圖書(shū)測(cè)試結(jié)果如圖6-27所示。EXECUTE 讀者借閱_據(jù)索取號(hào)查詢圖書(shū)CALL_NUMBER=O158/21圖6-27 過(guò)程據(jù)索取號(hào)查詢圖書(shū)測(cè)試結(jié)果 3.(1)讀者借閱:據(jù)責(zé)任者查詢圖書(shū)。 /*讀者借閱_據(jù)責(zé)任者查詢圖書(shū)*/CREATE PROCEDURE 讀者借閱_據(jù)責(zé)任者查詢圖書(shū)
25、AUTHOR varchar(50) AS SELECT *FROM BookWHERE 責(zé)任者=AUTHORGO (2)測(cè)試:過(guò)程據(jù)責(zé)任者查詢圖書(shū)測(cè)試結(jié)果如圖6-28所示。EXECUTE 讀者借閱_據(jù)責(zé)任者查詢圖書(shū)AUTHOR=錢學(xué)忠圖6-28 據(jù)責(zé)任者查詢圖書(shū)測(cè)試結(jié)果 4. (1)讀者借閱:據(jù)出版社查詢圖書(shū)。 /*讀者借閱_據(jù)出版社查詢圖書(shū)*/CREATE PROCEDURE 讀者借閱_據(jù)出版社查詢圖書(shū)PRESS varchar(50) AS SELECT *FROM BookWHERE 出版社=PRESSGO (2)測(cè)試:過(guò)程據(jù)出版社查詢圖書(shū)測(cè)試結(jié)果如圖6-29所示。EXECUTE 讀者
26、借閱_據(jù)出版社查詢圖書(shū)PRESS=清華大學(xué)圖6-29 過(guò)程據(jù)出版社查詢圖書(shū)測(cè)試結(jié)果 5.(1)讀者借閱情況:據(jù)讀者證號(hào)查詢。 /*讀者借閱情況_據(jù)讀者證號(hào)查詢*/CREATE PROCEDURE 讀者借閱情況_據(jù)讀者證號(hào)查詢READER_NUMBER char(10) AS SELECT Book.索取號(hào),正題名,借閱日期,應(yīng)還日期,標(biāo)準(zhǔn)編號(hào)FROM Borrow,Reader,BookWHERE Borrow.索取號(hào)=Book.索取號(hào)AND Borrow.讀者證號(hào)=Reader.讀者證號(hào)AND Borrow.讀者證號(hào)=READER_NUMBERGO (2)測(cè)試:過(guò)程據(jù)讀者證號(hào)查詢借閱情況測(cè)試
27、結(jié)果如圖6-30。EXECUTE 讀者借閱情況_據(jù)讀者證號(hào)查詢READER_NUMBER=圖6-30 過(guò)程據(jù)讀者證號(hào)查詢借閱情況測(cè)試結(jié)果2.7.2 人事管理員 1.(1)人事管理員:據(jù)姓名查詢?nèi)藛T信息。 /*人事管理員_據(jù)姓名查詢?nèi)藛T信息*/CREATE PROCEDURE 人事管理員_據(jù)姓名查詢?nèi)藛T信息NAME varchar(50) AS SELECT *FROM ReaderWHERE 姓名=NAMEGO (2)測(cè)試:過(guò)程據(jù)姓名查詢?nèi)藛T信息測(cè)試結(jié)果如圖6-31所示。EXECUTE 人事管理員_據(jù)姓名查詢?nèi)藛T信息NAME=流浪圖6-31 程據(jù)據(jù)姓名查詢?nèi)藛T信息測(cè)試結(jié)果 2.(1)人事管理員
28、:據(jù)讀者證號(hào)查詢?nèi)藛T信息。 /*人事管理員_據(jù)讀者證號(hào)查詢?nèi)藛T信息*/CREATE PROCEDURE 人事管理員_據(jù)讀者證號(hào)查詢?nèi)藛T信息READER_NUMBER char(10) AS SELECT *FROM ReaderWHERE 讀者證號(hào)=READER_NUMBERGO (2)測(cè)試:過(guò)程據(jù)讀者證號(hào)查詢?nèi)藛T信息測(cè)試結(jié)果如圖6-32所示。EXECUTE 人事管理員_據(jù)讀者證號(hào)查詢?nèi)藛T信息READER_NUMBER=圖6-32 過(guò)程據(jù)讀者證號(hào)查詢?nèi)藛T信息測(cè)試結(jié)果 3.(1)人事管理員:添加人員信息。 /*人事管理員_添加人員信息*/CREATE PROCEDURE 人事管理員_添加人員信息
29、READER_NUMBER char(10),NAME varchar(50),SEX char(2),RANGE_NUMBER int,COMPANY varchar(50),ADD varchar(50),TEL varchar(50),DATE datetime,REMARK textAS INSERT INTO Reader VALUES(READER_NUMBER,NAME,SEX,RANGE_NUMBER ,COMPANY, ADD,TEL,DATE,REMARK) GO (2)測(cè)試:過(guò)程添加人員信息測(cè)試結(jié)果如圖6-33(a)、(b)所示。EXECUTE 人事管理員_添加人員信息
30、READER_NUMBER=,NAME=翟萌,SEX=男,RANGE_NUMBER=4,COMPANY=,ADD=3#222,TEL=,DATE=2014-09-14,REMARK= 6-33(a) 過(guò)程添加人員信息測(cè)試結(jié)果圖6-33(b) 過(guò)程添加人員信息測(cè)試結(jié)果 4.(1)人事管理員:更新人員信息。 /*人事管理員_更新人員信息*/CREATE PROCEDURE 人事管理員_更新人員信息READER_NUMBER char(10),NAME varchar(50),SEX char(2),RANGE_NUMBER int,COMPANY varchar(50),ADD varchar(5
31、0),TEL varchar(50),DATE datetime,REMARK textAS UPDATE ReaderSET 姓名=NAME,性別=SEX,種類編號(hào)=RANGE_NUMBER,單位=COMPANY, 住址=ADD,電話=TEL,登記日期=DATE,備注=REMARKWHERE 讀者證號(hào)=READER_NUMBER GO (2)測(cè)試:過(guò)程更新人員信息測(cè)試結(jié)果如圖6-34(a)、(b)所示。EXECUTE 人事管理員_更新人員信息READER_NUMBER=,NAME=王吉,SEX=男,RANGE_NUMBER=4,COMPANY=,ADD=3#210,TEL=,DATE=201
32、4-02-20,REMARK= 6-34(a) 過(guò)程更新人員信息測(cè)試結(jié)果圖6-34(b) 過(guò)程更新人員信息測(cè)試結(jié)果 5.(1)人事管理員:據(jù)讀者證號(hào)刪除人員信息。 /*人事管理員_據(jù)讀者證號(hào)刪除人員信息*/CREATE PROCEDURE 人事管理員_據(jù)讀者證號(hào)刪除人員信息READER_NUMBER char(10) AS DELETE FROM ReaderWHERE 讀者證號(hào)=READER_NUMBERGO (2)測(cè)試:過(guò)程據(jù)讀者證號(hào)刪除人員信息測(cè)試結(jié)果如圖6-35(a)、(b)所示。EXECUTE 人事管理員_據(jù)讀者證號(hào)刪除人員信息READER_NUMBER= 6-35(a) 過(guò)程據(jù)讀者
33、證號(hào)刪除人員信息測(cè)試結(jié)果圖6-35(b) 過(guò)程據(jù)讀者證號(hào)刪除人員信息測(cè)試結(jié)果2.7.3 圖書(shū)管理員1.(1)人事管理員:據(jù)姓名查詢?nèi)藛T信息。 /*人事管理員_據(jù)姓名查詢?nèi)藛T信息*/CREATE PROCEDURE 人事管理員_據(jù)姓名查詢?nèi)藛T信息NAME varchar(50) AS SELECT *FROM ReaderWHERE 姓名=NAMEGO (2)測(cè)試:過(guò)程據(jù)姓名查詢?nèi)藛T信息測(cè)試結(jié)果如圖6-31所示。EXECUTE 人事管理員_據(jù)姓名查詢?nèi)藛T信息NAME=流浪圖6-31 過(guò)程據(jù)姓名查詢?nèi)藛T信息測(cè)試結(jié)果 2.(1)人事管理員:據(jù)讀者證號(hào)查詢?nèi)藛T信息。 /*人事管理員_據(jù)讀者證號(hào)查詢?nèi)藛T
34、信息*/CREATE PROCEDURE 人事管理員_據(jù)讀者證號(hào)查詢?nèi)藛T信息READER_NUMBER char(10) AS SELECT *FROM ReaderWHERE 讀者證號(hào)=READER_NUMBERGO (2)測(cè)試:過(guò)程據(jù)讀者證號(hào)查詢?nèi)藛T信息測(cè)試結(jié)果如圖6-32所示。EXECUTE 人事管理員_據(jù)讀者證號(hào)查詢?nèi)藛T信息READER_NUMBER=圖6-32 過(guò)程據(jù)讀者證號(hào)查詢?nèi)藛T信息測(cè)試結(jié)果 3.(1)人事管理員:添加人員信息。 /*人事管理員_添加人員信息*/CREATE PROCEDURE 人事管理員_添加人員信息READER_NUMBER char(10),NAME var
35、char(50),SEX char(2),RANGE_NUMBER int,COMPANY varchar(50),ADD varchar(50),TEL varchar(50),DATE datetime,REMARK textAS INSERT INTO Reader VALUES(READER_NUMBER,NAME,SEX,RANGE_NUMBER ,COMPANY, ADD,TEL,DATE,REMARK) GO (2)測(cè)試:過(guò)程添加人員信息測(cè)試結(jié)果如圖6-33(a)、(b)所示。EXECUTE 人事管理員_添加人員信息 READER_NUMBER=,NAME=翟萌,SEX=男,RA
36、NGE_NUMBER=4,COMPANY=,ADD=3#222,TEL=,DATE=2014-09-14,REMARK= 6-33(a) 過(guò)程添加人員信息測(cè)試結(jié)果圖6-33(b) 過(guò)程添加人員信息測(cè)試結(jié)果 4.(1)人事管理員:更新人員信息。 /*人事管理員_更新人員信息*/CREATE PROCEDURE 人事管理員_更新人員信息READER_NUMBER char(10),NAME varchar(50),SEX char(2),RANGE_NUMBER int,COMPANY varchar(50),ADD varchar(50),TEL varchar(50),DATE datetime,REMARK textAS UPDATE ReaderSET 姓名=NAME,性別=SEX,種類編號(hào)=RANGE_NUMBER,單位=COMPANY, 住址=
溫馨提示
- 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ù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 老年精準(zhǔn)干預(yù)依從性提升:個(gè)體化溝通方案優(yōu)化
- 煤制烯烴生產(chǎn)工安全知識(shí)水平考核試卷含答案
- 余熱余壓利用系統(tǒng)操作工安全意識(shí)強(qiáng)化知識(shí)考核試卷含答案
- 硅料腐蝕工風(fēng)險(xiǎn)評(píng)估與管理強(qiáng)化考核試卷含答案
- 絲麻毛纖維預(yù)處理工安全宣貫?zāi)M考核試卷含答案
- 江浙高中發(fā)展聯(lián)盟2025-2026學(xué)年高三上學(xué)期1月學(xué)情監(jiān)測(cè)語(yǔ)文試題附答案
- 統(tǒng)編版本語(yǔ)文高中選擇性必修中冊(cè)《屈原列傳》第1課時(shí)教學(xué)設(shè)計(jì)
- 2026河北衡水市第八中學(xué)招聘?jìng)淇碱}庫(kù)及參考答案詳解
- 老年術(shù)后3D打印體位調(diào)整輔具設(shè)計(jì)
- 企業(yè)級(jí)大數(shù)據(jù)分析流程詳解
- 2023民用建筑鋼結(jié)構(gòu)檢測(cè)技術(shù)規(guī)程
- 江蘇省淮安市2024-2025學(xué)年七年級(jí)上學(xué)期期末地理試卷(含答案)
- 導(dǎo)管水密試驗(yàn)流程
- 銷售經(jīng)理2025年工作總結(jié)及2025年工作計(jì)劃
- 《保障農(nóng)民工工資支付條例》五項(xiàng)制度特別解讀
- 新醫(yī)療新技術(shù)答辯
- 建筑施工-10S505柔性接口給水管道支墩規(guī)范圖集
- 高校校園超市運(yùn)營(yíng)管理方案
- 醫(yī)療類產(chǎn)品設(shè)計(jì)
- 體系工程師工作年終總結(jié)
- 德育原理 課件全套 班建武 第1-9章 德育的本質(zhì)與功能-學(xué)校德育現(xiàn)代化
評(píng)論
0/150
提交評(píng)論