版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
信息工程學(xué)院《數(shù)據(jù)庫(kù)原理與應(yīng)用》課程設(shè)計(jì)論文題目:音響店VCD零售\出租管理系統(tǒng)學(xué)號(hào):1212210225專(zhuān)業(yè)班級(jí):計(jì)12本2姓名:劉康指導(dǎo)老師:尚佩妮完成日期:2014-12-28目錄1引言 12需求分析階段 22.1引言 22.2需求分析階段的目標(biāo)與任務(wù) 22.2.1處理對(duì)象 22.2.2處理功能及要求 32.2.3安全性與完整性要求 32.3需求分析階段成果 32.3.1體會(huì)與收獲 42.3.2音像店VCD管理系統(tǒng)數(shù)據(jù)流圖 42.3.4音像店VCD管理系統(tǒng)數(shù)據(jù)字典 43概念設(shè)計(jì)階段 73.1引言 73.2任務(wù)與目標(biāo) 73.3階段結(jié)果 74邏輯結(jié)構(gòu)設(shè)計(jì) 94.1邏輯設(shè)計(jì)的任務(wù)和目標(biāo) 94.2數(shù)據(jù)組織 94.2.1將E-R圖轉(zhuǎn)換為關(guān)系模式 94.2.2模式優(yōu)化 104.2.3數(shù)據(jù)庫(kù)模式定義 104.3數(shù)據(jù)處理 115物理結(jié)構(gòu)設(shè)計(jì) 125.1物理設(shè)計(jì)階段的目標(biāo)與任務(wù) 125.2數(shù)據(jù)存儲(chǔ)方面 126數(shù)據(jù)庫(kù)實(shí)施階段 136.1建立數(shù)據(jù)庫(kù)、數(shù)據(jù)表、視圖、索引 136.1.1建立數(shù)據(jù)庫(kù) 136.1.2建立數(shù)據(jù)表 136.1.3建立視圖 156.1.4建立索引 166.1.5建立觸發(fā)器 166.2數(shù)據(jù)入庫(kù) 186.3創(chuàng)建各個(gè)功能的存儲(chǔ)過(guò)程 197.系統(tǒng)調(diào)試和測(cè)試 198.實(shí)習(xí)心得 20附錄1存儲(chǔ)過(guò)程定義 21附錄2數(shù)據(jù)查看和存儲(chǔ)過(guò)程功能的驗(yàn)證 27附錄3所有的SQL運(yùn)行語(yǔ)句 31摘要隨著社會(huì)經(jīng)濟(jì)的發(fā)展,人們對(duì)生活質(zhì)量的要求越來(lái)越高,對(duì)生活中的娛樂(lè)追求也是越來(lái)越高,傳統(tǒng)的娛樂(lè)方式已經(jīng)發(fā)生了變化。作為VCD銷(xiāo)售商來(lái)說(shuō),更多的用戶(hù)需要對(duì)VCD進(jìn)行租賃。在租賃的過(guò)程中需求量大,操作復(fù)雜卻流程完全相同,銷(xiāo)售/租賃商頻繁的做著相同的工作,既浪費(fèi)時(shí)間又不能提高效率,這要求編寫(xiě)一個(gè)方便使用的VCD出租系統(tǒng)以其解決上訴問(wèn)題。實(shí)現(xiàn)對(duì)商品的瀏覽,租賃和出售,并對(duì)銷(xiāo)售的情況作出相關(guān)的統(tǒng)計(jì),并對(duì)各類(lèi)的VCD分類(lèi)影片進(jìn)行一個(gè)統(tǒng)計(jì)。利用該系統(tǒng)體現(xiàn)了管理者的思想,實(shí)現(xiàn)計(jì)算機(jī)的統(tǒng)一管理。 通過(guò)使用計(jì)算機(jī)實(shí)現(xiàn)傳統(tǒng)的VCD銷(xiāo)售商的繁雜的手工操作計(jì)算環(huán)節(jié),可大大提高工作效率。在互聯(lián)網(wǎng)發(fā)展和服務(wù)效率至上的今天,各種重復(fù)的操作都可以交給計(jì)算機(jī)實(shí)現(xiàn),既能學(xué)習(xí)先進(jìn)的管理經(jīng)驗(yàn),有可以提高工作效率。所以對(duì)于VCD這個(gè)傳統(tǒng)的行業(yè)來(lái)說(shuō),確實(shí)需要編寫(xiě)一個(gè)系統(tǒng)去代替人力完成工作。 本文從VCD出租/銷(xiāo)售系統(tǒng)的開(kāi)發(fā)為背景,全文分為目錄、需求分析、概要設(shè)計(jì)、邏輯設(shè)計(jì)、物理設(shè)計(jì),以及系統(tǒng)的實(shí)現(xiàn)等全過(guò)程。在程序設(shè)計(jì)與調(diào)試上采用了自上而下,逐步細(xì)化,逐步完善的原則。采用結(jié)構(gòu)化的功能模塊設(shè)計(jì)系統(tǒng)功能,可讀性好,易于擴(kuò)充?;竟δ苋妫到y(tǒng)可讀性好,易于維護(hù)、更新,安全性好。關(guān)鍵詞:VCD銷(xiāo)售;VCD出租;VCD管理1引言隨著互聯(lián)網(wǎng)時(shí)代的到來(lái),我們的生活方式發(fā)生了巨大的變化。利用計(jì)算機(jī)能夠幫助我們解決各種問(wèn)題。各種的應(yīng)用軟件層出不窮。人們對(duì)計(jì)算機(jī)智能化的要求越來(lái)越高,許多傳統(tǒng)的手工管理逐漸被計(jì)算機(jī)系統(tǒng)所代替。人們的生活質(zhì)量的要求越來(lái)越高,對(duì)生活中的娛樂(lè)方式也更加多樣化,已經(jīng)不再是很長(zhǎng)的時(shí)間看一部很經(jīng)典的電影。在過(guò)去的VCD出租和銷(xiāo)售中都是依靠的商家的自己的手工的篩選和銷(xiāo)售。對(duì)大量的客服而言的商家是既費(fèi)時(shí)又費(fèi)力,對(duì)VCD的管理也不能做到相對(duì)的統(tǒng)一,有明確的分類(lèi)。計(jì)算機(jī)的出現(xiàn),提供了一個(gè)很好的解決的方案,能夠通過(guò)相關(guān)的管理軟件對(duì)其進(jìn)行統(tǒng)一的管理、銷(xiāo)售、租賃等等商業(yè)活動(dòng)。開(kāi)發(fā)VCD零售/出租管理系統(tǒng)幫助商家提高效率,降低經(jīng)營(yíng)成本,優(yōu)化資源配置,從而實(shí)現(xiàn)商品的最大利益化。2需求分析階段2.1引言進(jìn)行系統(tǒng)設(shè)計(jì),首先要對(duì)系統(tǒng)的現(xiàn)狀進(jìn)行分析。根據(jù)系統(tǒng)的目標(biāo)、需求和功能,制定和選擇一個(gè)較好的系統(tǒng)方案,從而達(dá)到一個(gè)合理的優(yōu)化系統(tǒng)。如今又許多的VCD銷(xiāo)售商,最初購(gòu)買(mǎi)的人數(shù)較少,手工管理還能應(yīng)付,但是隨著VCD需求人數(shù)的增多,傳統(tǒng)的手工方式已遠(yuǎn)遠(yuǎn)不能滿(mǎn)足商家的需求,就需要新的銷(xiāo)售/出租系統(tǒng)去做。需求分析是在于要弄清用戶(hù)對(duì)開(kāi)發(fā)的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的確切要求。數(shù)據(jù)庫(kù)設(shè)計(jì)的第一步是明確數(shù)據(jù)庫(kù)的目的和如何使用,也就是說(shuō)需要從數(shù)據(jù)庫(kù)中得到哪些信息。明確目的之后,就可以確定您需要保存哪些主題的信息(表),以及每個(gè)主題需要保存哪些信息(表中字段)。在構(gòu)造系統(tǒng)時(shí),首先從需求出發(fā)構(gòu)造數(shù)據(jù)庫(kù)表,然后再由數(shù)據(jù)庫(kù)表結(jié)合需求劃分系統(tǒng)功能模塊。這樣,就把一個(gè)大的系統(tǒng)分解成了幾個(gè)小系統(tǒng)。這里把系統(tǒng)的層次劃分為了四個(gè)部分:用戶(hù)信息管理,VCD信息管理,VCD銷(xiāo)售信息管理,VCD出租信息管理。能夠?qū)崿F(xiàn)以下功能:eq\o\ac(○,1)新的用戶(hù)加入,用戶(hù)信息及時(shí)更新;②對(duì)于新入庫(kù)VCD,能夠及時(shí)更新VCD信息,便于用戶(hù)查詢(xún);③能夠記錄用戶(hù)的銷(xiāo)售和出租信息;④用戶(hù)、商家均能查詢(xún)相應(yīng)的信息,方便交流;2.2需求分析階段的目標(biāo)與任務(wù) 2.2.1處理對(duì)象用戶(hù)信息:用戶(hù)編號(hào),用戶(hù)性別,用戶(hù)電話(huà)號(hào)碼,用戶(hù)身份證號(hào)碼VCD信息:VCD編號(hào),VCD類(lèi)型號(hào),VCD片名,導(dǎo)演,主演,上市時(shí)間,庫(kù)存數(shù)量,格式VCD類(lèi)型:VCD類(lèi)型號(hào),類(lèi)型名VCD出租:出租編號(hào),VCD編號(hào),出租數(shù)量,出租時(shí)間,歸還時(shí)間,押金,狀態(tài),用戶(hù)編號(hào)VCD銷(xiāo)售:VCD編號(hào),用戶(hù)編號(hào),銷(xiāo)售時(shí)間,銷(xiāo)售數(shù)量2.2.2處理功能及要求1.能夠存儲(chǔ)一定數(shù)量的VCD信息,并方便有效的進(jìn)行相應(yīng)的VCD數(shù)據(jù)操作和管理,這主要包括:1)VCD信息的錄入、刪除及修改。2)VCD信息的多關(guān)鍵字檢索查詢(xún)。3)VCD的出租、銷(xiāo)售管理。2.能夠?qū)σ欢〝?shù)量的用戶(hù)進(jìn)行相應(yīng)的信息存儲(chǔ)與管理,這其中包括:1)用戶(hù)信息的登記、刪除及修改。3)用戶(hù)資料的統(tǒng)計(jì)與查詢(xún)。3.能夠提供一定的安全機(jī)制,提供數(shù)據(jù)信息授權(quán)訪問(wèn),防止隨意刪改、查詢(xún)。4.對(duì)查詢(xún)、統(tǒng)計(jì)的結(jié)果能夠列表顯示。2.2.3安全性與完整性要求1)安全性要求系統(tǒng)安全性要求體現(xiàn)在數(shù)據(jù)庫(kù)安全性、信息安全性和系統(tǒng)平臺(tái)的安全性等方面。安全性先通過(guò)視圖機(jī)制,不同的用戶(hù)只能訪問(wèn)系統(tǒng)授權(quán)的視圖,這樣可提供系統(tǒng)數(shù)據(jù)一定程度上的安全性,再通過(guò)分配權(quán)限、設(shè)置權(quán)限級(jí)別來(lái)區(qū)別對(duì)待不同操作者對(duì)數(shù)據(jù)庫(kù)的操作來(lái)提高數(shù)據(jù)庫(kù)的安全性;系統(tǒng)平臺(tái)的安全性體現(xiàn)在操作系統(tǒng)的安全性、計(jì)算機(jī)系統(tǒng)的安全性和網(wǎng)絡(luò)體系的安全性等方面。2)完整性要求系統(tǒng)完整性要求系統(tǒng)中數(shù)據(jù)的正確性以及相容性??赏ㄟ^(guò)建立主、外鍵,使用check約束,或者通過(guò)使用觸發(fā)器和級(jí)聯(lián)更新。2.3需求分析階段成果2.3.1體會(huì)與收獲系統(tǒng)需求分析主要是通過(guò)自己對(duì)于VCD銷(xiāo)售與出租行業(yè)的了解,去咨詢(xún)一些VCD銷(xiāo)售商,以及通過(guò)互聯(lián)網(wǎng)進(jìn)行一些調(diào)查,了解VCD銷(xiāo)售商在管理中的一些問(wèn)題。由于沒(méi)有經(jīng)驗(yàn)和時(shí)間的不足,所以在做的過(guò)程中有許多問(wèn)題,而又正值放假,所以只能自己通過(guò)互聯(lián)網(wǎng)去查詢(xún),并通過(guò)數(shù)據(jù)流圖一步一步了解其中過(guò)程,最終完成了需求分析任務(wù)。2.3.2音像店VCD管理系統(tǒng)數(shù)據(jù)流圖頂層數(shù)據(jù)流圖:圖2.1頂層數(shù)據(jù)流圖第二層數(shù)據(jù)流圖:圖2.2第二層數(shù)據(jù)流圖2.3.4音像店VCD管理系統(tǒng)數(shù)據(jù)字典a)數(shù)據(jù)項(xiàng)表1.1數(shù)據(jù)項(xiàng)列表數(shù)據(jù)項(xiàng)編號(hào)數(shù)據(jù)項(xiàng)名數(shù)據(jù)項(xiàng)含義與其它數(shù)據(jù)項(xiàng)的關(guān)系存儲(chǔ)結(jié)構(gòu)別名DI-1UserID唯一標(biāo)識(shí)一個(gè)用戶(hù)char(9)用戶(hù)標(biāo)號(hào)DI-2UserSex用戶(hù)的性別char(2)性別DI-3UserTel用戶(hù)的電話(huà)號(hào)碼char(11)電話(huà)DI-4UserNum用戶(hù)身份證號(hào)碼char(18)身份證號(hào)碼DI-5VidVCD的編號(hào)char(10)VCD編號(hào)DI-6VtypeVCD類(lèi)型號(hào)char(20)VCD類(lèi)型號(hào)DI-7VnameVCD片名Char(30)VCD片名DI-8Vdirector該VCD的導(dǎo)演char(20)導(dǎo)演DI-9Vact該VCD的主演char(20)主演DI-10VdateVCD的上市時(shí)間Date上市時(shí)間DI-11Vamount該VCD當(dāng)前的總數(shù)int庫(kù)存數(shù)量DI-12Vform該VCD的播放格式Char(5)格式DI-13TnameVCD屬于哪種類(lèi)型Char(20)類(lèi)型名DI-14Hid出租的VCD編號(hào)Char(5)出租編號(hào)DI-15Hamount出租該VCD的總數(shù)char(5)出租數(shù)量DI-16Htime出租該VCD的時(shí)間Date出租時(shí)間DI-17Hre歸還該VCD的時(shí)間Date歸還時(shí)間DI-18Hmoney出租VCD的抵押金Money押金DI-19Hstate該VCD是否可以出租Char(1)狀態(tài)DI-20Stime該VCD的銷(xiāo)售時(shí)間Date銷(xiāo)售時(shí)間DI-21Samount該VCD的銷(xiāo)售總數(shù)Char(5)銷(xiāo)售總數(shù)b)數(shù)據(jù)結(jié)構(gòu):表1.2數(shù)據(jù)結(jié)構(gòu)列表數(shù)據(jù)結(jié)構(gòu)編號(hào)數(shù)據(jù)結(jié)構(gòu)名數(shù)據(jù)結(jié)構(gòu)含義組成DS-1User用戶(hù)信息UserID,UserSex,UserTel,UserNumDS-2VCDVCD信息Vid,Vtype,Vname,Vdirector,Vact,Vdata,Vamount,VformDS-3TypeVCD類(lèi)型Vtype,TnameDS-4HireVCD出租Vid,Hid,Hamount,Htime,Hre,Hmoney,HstateDS-5SaleVCD銷(xiāo)售UserID,Vid,Stime,Smount3概念設(shè)計(jì)階段3.1引言系統(tǒng)開(kāi)發(fā)的總體目標(biāo)是實(shí)現(xiàn)VCD銷(xiāo)售商在VCD銷(xiāo)售/出租方面的自動(dòng)化,減輕工作人員的工作量,方便工作人員對(duì)它的操作,提高管理的質(zhì)量和水平,做到高效、智能化管理,從而達(dá)到提高VCD銷(xiāo)售/出租管理效率的目的。主要任務(wù)是對(duì)用戶(hù)信息、VCD信息、VCD出租信息、VCD銷(xiāo)售信息的基本信息的操作及外理。概念設(shè)計(jì)階段主要是將需求分析階段得到的用戶(hù)需求抽象為信息結(jié)構(gòu)(概念模型)的過(guò)程,它是整個(gè)數(shù)據(jù)庫(kù)設(shè)計(jì)的關(guān)鍵。3.2任務(wù)與目標(biāo)(1)選擇第二層數(shù)據(jù)流為切入點(diǎn),通常選擇實(shí)際系統(tǒng)中的子系統(tǒng);(2)設(shè)計(jì)生成初步分E-R圖,通過(guò)合并方法,做到各實(shí)體、屬性、聯(lián)系統(tǒng)一;(4)生成全局E-R圖,通過(guò)消除沖突等方面。在本VCD銷(xiāo)售/出租管理系統(tǒng)中,從第2層數(shù)據(jù)流程圖下手。分析數(shù)據(jù)流圖和數(shù)據(jù)字典,知道整個(gè)系統(tǒng)功能?chē)@“用戶(hù)”和“VCD”的處理。根據(jù)實(shí)體與屬性間的兩條準(zhǔn)則:生成各個(gè)分E-R圖:從而合并成總E-R圖:。3.3階段結(jié)果(1)a.VCD信息與VCD類(lèi)型之間的關(guān)系:圖3.1分E-R圖b.用戶(hù)與VCD信息出租之間的關(guān)系:圖3.2分E-R圖c.用戶(hù)與VCD信息銷(xiāo)售之間的關(guān)系:圖3.3分E-R圖(2)基本E-R圖圖3,.4總E-R圖E-R圖的各實(shí)體屬性如下所示:用戶(hù):User(UserID,UserSex,UserTel,UserNum)VCD信息:VCD(Vid,Vtype,Vname,Vdirector,Vact,Vdata,Vamount,Vform)VCD類(lèi)型:Type(Vtype,Tname)VCD出租:Hire(Vid,UserID,Hid,Hamount,Htime,Hre,Hmoney,Hstate)VCD銷(xiāo)售:Sale(UserID,Vid,Stime,Smount);4邏輯結(jié)構(gòu)設(shè)計(jì)4.1邏輯設(shè)計(jì)的任務(wù)和目標(biāo)以上的概念設(shè)計(jì)階段是獨(dú)立于任何一種數(shù)據(jù)模型的,但是邏輯設(shè)計(jì)階段就與選用的DBMS產(chǎn)品發(fā)生關(guān)系了,系統(tǒng)邏輯設(shè)計(jì)的任務(wù)就是將概念設(shè)計(jì)階段設(shè)計(jì)好的基本E-R圖轉(zhuǎn)換為選用DBMS產(chǎn)品所支持的數(shù)據(jù)模型相符合的邏輯結(jié)構(gòu)。具體內(nèi)容包括數(shù)據(jù)組織(將E-R圖轉(zhuǎn)換成關(guān)系模型、模型優(yōu)化、數(shù)據(jù)庫(kù)模式定義、用戶(hù)子模式設(shè)計(jì))、數(shù)據(jù)處理(畫(huà)出系統(tǒng)功能模塊圖)兩大任務(wù)。4.2數(shù)據(jù)組織4.2.1將E-R圖轉(zhuǎn)換為關(guān)系模式實(shí)體型轉(zhuǎn)換為關(guān)系模式。實(shí)體的屬性就是關(guān)系的屬性,實(shí)體的碼就是關(guān)系的碼。對(duì)于實(shí)體間的聯(lián)系則有以下不同的情況:
一個(gè)m:n聯(lián)系轉(zhuǎn)換為一個(gè)關(guān)系模式。與該聯(lián)系相連的各實(shí)體的碼以及聯(lián)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,而關(guān)系的碼為各實(shí)體碼的組合。一個(gè)1:n聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,也可以與n端對(duì)應(yīng)的關(guān)系模式合并。如果轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,則與該聯(lián)系相連的各實(shí)體的碼以及聯(lián)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,而關(guān)系的碼為n端實(shí)體的碼。
一個(gè)1:1聯(lián)系可以轉(zhuǎn)換為一個(gè)獨(dú)立的關(guān)系模式,也可以與任意一端對(duì)應(yīng)的關(guān)系模式合并。三個(gè)或三個(gè)以上實(shí)體間的一個(gè)多元聯(lián)系可以轉(zhuǎn)換為一個(gè)關(guān)系模式。與該多元聯(lián)系相連的各實(shí)體的碼以及聯(lián)系本身的屬性均轉(zhuǎn)換為關(guān)系的屬性,而關(guān)系的碼為各實(shí)體碼的組合具體的基本E-R圖向關(guān)系模型的轉(zhuǎn)化如下:用戶(hù):User(UserID,UserSex,UserTel,UserNum)VCD信息:VCD(Vid,Vtype,Vname,Vdirector,Vact,Vdata,Vamount,Vform)VCD類(lèi)型:Type(Vtype,Tname)VCD出租:Hire(Vid,UserID,Hid,Hamount,Htime,Hre,Hmoney,Hstate)VCD銷(xiāo)售:Sale(UserID,Vid,Stime,Smount);4.2.2模式優(yōu)化關(guān)系模式User,VCD,Type,Hire,Sale既不存在非主屬性對(duì)主屬性的部分函數(shù)依賴(lài),也不存在傳遞函數(shù)依賴(lài),已經(jīng)達(dá)到了3NF。4.2.3數(shù)據(jù)庫(kù)模式定義列名數(shù)據(jù)類(lèi)型可否為空說(shuō)明UserIDCharnotnull用戶(hù)編號(hào)UserSexChar用戶(hù)性別UserTelChar用戶(hù)電話(huà)號(hào)碼UserNumCharnotnull用戶(hù)的身份證號(hào)列名數(shù)據(jù)類(lèi)型可否為空說(shuō)明VidCharnotnullVCD編號(hào)VtypeCharnotnullVCD類(lèi)型號(hào)VnameCharnotnullVCD片名VdirectorChar導(dǎo)演VactChar主演VdataChar上市時(shí)間VamountDatenotnull庫(kù)存數(shù)量VformCharnotnull播放格式列名數(shù)據(jù)類(lèi)型可否為空說(shuō)明VtypeCharnotnullVCD類(lèi)型號(hào)TnameCharnotnullVCD類(lèi)型名列名數(shù)據(jù)類(lèi)型可否為空說(shuō)明VidCharnotnullVCD編號(hào)UserIDCharnotnull用戶(hù)編號(hào)HidCharnotnull出租編號(hào)HamountCharnotnull出租數(shù)量HtimeChar出租時(shí)間HreChar歸還時(shí)間HmoneyDate押金HstateCharnotnull出租狀態(tài)列名數(shù)據(jù)類(lèi)型可否為空說(shuō)明UserIDCharnotnull用戶(hù)編號(hào)VidCharnotnullVCD編號(hào)StimeChar銷(xiāo)售時(shí)間SamountCharnotnull銷(xiāo)售數(shù)量4.3數(shù)據(jù)處理系統(tǒng)功能模塊圖:圖4.1系統(tǒng)功能模塊5物理結(jié)構(gòu)設(shè)計(jì)5.1物理設(shè)計(jì)階段的目標(biāo)與任務(wù) 數(shù)據(jù)庫(kù)的物理設(shè)計(jì)就是為邏輯數(shù)據(jù)模型選取一個(gè)最合適應(yīng)用要求的物理結(jié)構(gòu)的過(guò)程,在這個(gè)階段中要完成兩大任務(wù):(1)確定數(shù)據(jù)庫(kù)的物理結(jié)構(gòu),在關(guān)系數(shù)據(jù)庫(kù)中主要是存取方法和存儲(chǔ)結(jié)構(gòu);(2)對(duì)物理結(jié)構(gòu)進(jìn)行評(píng)價(jià),評(píng)價(jià)的重點(diǎn)是時(shí)間和空間效率。5.2數(shù)據(jù)存儲(chǔ)方面為數(shù)據(jù)庫(kù)中各基本表建立的索引如下:由于基本表User,VCD的主碼UserID,Vid經(jīng)常在查詢(xún)條件和連接操作的連接條件中出現(xiàn),且它們的值唯一,在兩個(gè)屬性上建立唯一性索引;由于基本表VCD的屬性Vname,Type的屬性Tname經(jīng)常在查詢(xún)條件中出現(xiàn)在兩個(gè)屬性上建立聚簇索引;6數(shù)據(jù)庫(kù)實(shí)施階段6.1建立數(shù)據(jù)庫(kù)、數(shù)據(jù)表、視圖、索引6.1.1建立數(shù)據(jù)庫(kù)CreatedatabaseManagerVCD;6.1.2建立數(shù)據(jù)表(1)用戶(hù)信息表:CreatetableUser( UserIDchar(10)primarykey, UserSexchar(2)notnull, UserTelchar(11)notnull, UserNumchar(18)notnull, );(2)VCD信息表CreatetableVCD( Vidchar(10)primarykey, Vnamechar(30)notnull, Vtypechar(20)notnull, Vdirectorchar(20), Vactchar(20), Vdatedate, Vamountintnotnull, Vformchar(5)notnull, )(3)VCD類(lèi)型表CreatetableType( Vtypechar(20)primarykey; Tnamechar(20)notnull, )(4)VCD出租表CreatetableHire( Hidchar(5)primarykey, Vidchar(10)notnull, Hamountchar(5), Htimedate, Hredate, Hmoneyint, Hstatechar(2)notnull, UserIDchar(9)notnull, )(5)VCD銷(xiāo)售表CreatetableSale( UserIDchar(9)primarykey, Vidchar(10)primarykey, Samountchar(5)notnull, Stimedate, )外鍵約束通過(guò)MySQL語(yǔ)句進(jìn)行添加(附錄2)。6.1.3建立視圖(1)建立用戶(hù)視圖:Createviewuser_viewasSelect*fromUser(2)建立用戶(hù)查詢(xún)VCD視圖;Createviewuser_QueryASselectVCD.Vid,Type.Tname,VCD.Vname,VCD.VamountfromVCD,TypewhereVCD.Vtype=Type.Vtype;(3)管理員查詢(xún)用戶(hù)視圖(a):CreateViewManager_HAsSelectVCD.Vid,Hire.HamountFromVCD,HireWhereVCD.Vid=Hire.Vid(4)管理員查詢(xún)用戶(hù)視圖(b):CreateViewManager_SAsSelectVCD.Vid,Sale.SamountFromVCD,SaleWhereVCD.Vid=Sale.Vid6.1.4建立索引Createuniqueindexuser_idonUser(UserID)Createuniqueindexvcd_idonVCD(Vid)CreateclusterindexVCD_indexonVCD(Vname)CreateclusterindexType_indexonType(Tname)6.1.5建立觸發(fā)器(1)當(dāng)刪除Hire表中的一條出租記錄時(shí),觸發(fā)VCD表,更新相應(yīng)記錄delimiter$createtriggert_vcd_hire_deleteafterdeleteonhireforeachrowbegin updatevcd setvamount=vamount-old.hamount wherevcd.Vid=old.vid;end$delimiter;(2)當(dāng)在Hire表中增加一條出租記錄時(shí),觸發(fā)VCD,更新相應(yīng)記錄delimiter$createtriggert_vcd_hire_insertbeforeinsertonhireforeachrowbegin updatevcd setvamount=vamount-new.hamount wherevcd.Vid=new.vid;end$delimiter;(3)當(dāng)更新Hire表中的一條出租記錄,觸發(fā)VCD表,更新相應(yīng)的記錄delimiter$createtriggert_vcd_hire_updateafterupdateonhireforeachrowbegin updatevcd setvamount=vamount-new.hamount wherevcd.Vid=new.vid;end$delimiter;(4)當(dāng)刪除Sale表中的一條銷(xiāo)售記錄時(shí),觸發(fā)VCD表,更新相應(yīng)的記錄delimiter$createtriggert_vcd_sale_deleteafterdeleteonsaleforeachrowbegin updatevcd setvamount=vamount-old.samount wherevcd.Vid=old.vid;end$delimiter;(5)當(dāng)在Sale表中增加一條銷(xiāo)售記錄時(shí),觸發(fā)VCD表,更新相應(yīng)的記錄delimiter$createtriggert_vcd_sale_insertafterinsertonsaleforeachrowbegin updatevcd setvamount=vamount-new.samount wherevcd.Vid=new.vid;end$delimiter;(6)當(dāng)Sale表更新一條銷(xiāo)售記錄時(shí),觸發(fā)VCD表,更新相應(yīng)的記錄delimiter$createtriggert_vcd_sale_updateafterupdateonsaleforeachrowbegin updatevcd setvamount=vamount-new.samount wherevcd.Vid=new.vid;end$delimiter;6.2數(shù)據(jù)入庫(kù)系統(tǒng)包括VCD用戶(hù)信息管理、VCD出租信息管理、VCD銷(xiāo)售信息管理、VCD信息管理等幾個(gè)功能模塊,共有5張基本表,直接用MySQL建立這5張基本表,并將數(shù)據(jù)導(dǎo)入到相應(yīng)的基本表中。6.3創(chuàng)建各個(gè)功能的存儲(chǔ)過(guò)程 系統(tǒng)共創(chuàng)建了12個(gè)存儲(chǔ)過(guò)程,具體列表如下:表3.1創(chuàng)建的存儲(chǔ)過(guò)程列表編號(hào)存儲(chǔ)過(guò)程名稱(chēng)定義作用P-1VCD_insert詳見(jiàn)附錄1-3在VCD中插入一個(gè)元組P-2User_insert詳見(jiàn)附錄1-1在User中插入一個(gè)元組P-3Type_insert詳見(jiàn)附錄1-2在Type中插入一個(gè)元組P-4User_delete詳見(jiàn)附錄1-4在User中刪除一個(gè)元組P-5VCD_delete詳見(jiàn)附錄1-5從VCD中刪除一個(gè)元組P-6Type_delete詳見(jiàn)附錄1-6從Type中刪除一個(gè)元組P-7Query_User詳見(jiàn)附錄1-7用戶(hù)在User中查詢(xún)本人信息P-8Query_User_All詳見(jiàn)附錄1-8管理員在User中查詢(xún)?nèi)孔x者P-9Query_User_S詳見(jiàn)附錄1-9用戶(hù)查詢(xún)自己的VCD購(gòu)買(mǎi)情況P-10Query_User_H詳見(jiàn)附錄1-10用戶(hù)查詢(xún)自己的VCD購(gòu)買(mǎi)情況P-11Hire_insert詳見(jiàn)附錄1-11在Hire表中增加一條出租元組P-12Sale_insert詳見(jiàn)附錄1-12在Sale表中增加一條銷(xiāo)售元組7.系統(tǒng)調(diào)試和測(cè)試對(duì)該圖書(shū)管理系統(tǒng)進(jìn)行測(cè)試,驗(yàn)證每個(gè)功能是否符合要求,具體的測(cè)試如下:(1)通過(guò)視圖查看各個(gè)基本表和視圖中的數(shù)據(jù)(見(jiàn)附錄2)(2)檢測(cè)各個(gè)存儲(chǔ)過(guò)程的功能:(見(jiàn)附錄2)8.實(shí)習(xí)心得這次課程設(shè)計(jì)使我對(duì)數(shù)據(jù)庫(kù)知識(shí)應(yīng)用有了進(jìn)一步認(rèn)識(shí),通過(guò)自己尋找各個(gè)資料,在紙上開(kāi)始做需求分析,畫(huà)數(shù)據(jù)流圖,以及數(shù)據(jù)庫(kù)的概念、邏輯、物理結(jié)構(gòu)設(shè)計(jì),讓后邊編寫(xiě)代碼和編寫(xiě)文檔比以往更方便。做紙上的東西卻很麻煩,要做VCD系統(tǒng),還需要去了解商家如何去操作的,以及如何做才能更方便的滿(mǎn)足商家和用戶(hù)的需求。通過(guò)這次課程設(shè)計(jì)我學(xué)到了許多東西,包括課堂上的,當(dāng)然還有課后學(xué)到的,都是通過(guò)去圖書(shū)館閱讀和網(wǎng)上查閱。因?yàn)檫@次數(shù)據(jù)庫(kù)設(shè)計(jì)使用的是MySQL語(yǔ)言,和我們平時(shí)學(xué)到的SQLserver有些區(qū)別,所以在設(shè)計(jì)過(guò)程中就會(huì)有趣多問(wèn)題,比如某個(gè)語(yǔ)法不一樣,導(dǎo)致總是出現(xiàn)語(yǔ)法錯(cuò)誤。就需要不多的去查閱網(wǎng)上的資料。但是,我進(jìn)一步掌握了相關(guān)的MySQL語(yǔ)句方面的知識(shí)。知道我們課堂上的知識(shí)太少了,幾乎知識(shí)講了方法和基本的語(yǔ)法。所以導(dǎo)致我總是認(rèn)為建表就是查詢(xún)、增加、刪除、更新,再做課程設(shè)計(jì)之前都不知道視圖具體是用來(lái)干嘛的,觸發(fā)器、存儲(chǔ)過(guò)程、索引幾乎就是空白?,F(xiàn)在了解了建立這些的用處了,以及使用主鍵、外鍵約束。通過(guò)這些保證數(shù)據(jù)庫(kù)的完整性,并且更能方便不同權(quán)限的用戶(hù)的操作。為用戶(hù)提供方便。4.總之,在整個(gè)課程設(shè)計(jì)的過(guò)程中,由于時(shí)間問(wèn)題以及自身經(jīng)驗(yàn)不足,所以這次做出來(lái)的東西存在許多問(wèn)題。但是,不可否認(rèn),我學(xué)到了更多的東西,包括系統(tǒng)的分析方式,知道前期的需求分析的重要性,這樣才能讓后邊的建表,建立觸發(fā)器之類(lèi)的順利進(jìn)行。附錄1存儲(chǔ)過(guò)程定義1.User_insert的定義:delimiter$createprocedureUser_insert(inidchar(9),insexchar(2),inTelchar(11), innumchar(18))begin insertintouser(userid,usersex,usertel,usernum)values(id,sex,tel,num);end$delimiter;2.Type_insert的定義:delimiter$createprocedureType_insert(intypechar(20),innamechar(20))begin insertintoType(Vtype,Tname)values(type,name);end$delimiter;3.VCD_insert的定義:delimiter$createprocedureVCD_insert(inidchar(10),intypechar(20),innamechar(30), indirectorchar(20)inactchar(20),indatedate,inamountint,informchar(5))begin insertintoVCD(Vid,Vtype,Vname,Vdirector,Vact,Vdate,Vamount,Vform)values(id,type,name,director,act,date,amount,form);end$delimiter;4.User_delete的定義:delimiter$createprocedureUser_delete(inidchar(9))begin delete fromuser whereuser.userid=id;end$delimiter;5.VCD_delete的定義:delimiter$createprocedureUser_delete(inidchar(10))begin delete fromVCD whereVCD.vid=id;enddelimiter;6.Type_delete的定義:delimiter$createprocedureType_delete(intypechar(20))begin delete fromType whereType.Vtype=type;enddelimiter;7.Query_User的定義delimiter$createprocedureQuery_User(inidchar(9))begin select* fromUser whereid=user.userid;end$delimiter;8.Query_User_All的定義:delimiter$createprocedureQuery_User_All()begin select* fromUser;end$delimiter;9.Query_User_S的定義:delimiter$createprocedureQuery_User_S(inidchar(9))begin selectuser.userid,vcd.Vname,sale.Samount fromuser,sale,vcd whereid=user.userid andid=sale.UserID andvcd.Vid=sale.Vid;end$delimiter;10.Query_User_H的定義:delimiter$createprocedureQuery_User_H(inidchar(9))begin selectuser.userid,vcd.Vname,Hire.Hamount fromuser,Hire,vcd whereid=user.userid andid=Hire.UserID andvcd.Vid=Hire.Vid;end$delimiter;11.Hire_insert的定義:delimiter$createprocedureHire_insert(inv_idchar(10),inh_idchar(5),inamountchar(5), intimedate,inredate,inmoneyint,instatechar(2),inu_idchar(9))begin insertintouser(Hid,Vid,Hamount,Htime,Hre,Hmoney,Hstate,UserID)values(v_id,h_id,amount,time,re,money,state,u_id);end$delimiter;12.Sale_insert的定義:delimiter$createprocedureSale_insert(inv_idchar(10),inu_idchar(9),intimedate, inamountchar(5))begin insertintouser(Vid,UserID,Stime,Samount)values(v_id,u_id,time,amount);end$delimiter;附錄2數(shù)據(jù)查看和存儲(chǔ)過(guò)程功能的驗(yàn)證查看VCD表中的信息:查看Type(VCD類(lèi)型)表中的信息:查看Hire(VCD出租)表中的信息:查看User(用戶(hù)信息)表中的信息:查看Sale(VCD銷(xiāo)售)表中的信息:用戶(hù)查詢(xún)VCD視圖:管理員視圖a:管理員視圖b:2.存儲(chǔ)過(guò)程驗(yàn)證:a.在User表中插入一條記錄: b.從User表中刪除一條記錄: C.管理員查詢(xún)所有用戶(hù)信息:觸發(fā)器驗(yàn)證:刪除Hire表中的一條記錄,觸發(fā)VCD表更新:其他驗(yàn)證省略.(在數(shù)據(jù)庫(kù)測(cè)試中均通過(guò))附錄3所有的SQL運(yùn)行語(yǔ)句CreatedatabaseManagerVCD;CreatetableUser( UserIDchar(10)primarykey, UserSexchar(2)notnull, UserTelchar(11)notnull, UserNumchar(18)notnull )CreatetableVCD( Vidchar(10)primarykey, Vnamechar(30)notnull, Vtypechar(20)notnull, Vdirectorchar(20), Vactchar(20), Vdatedate, Vamountintnotnull, Vformchar(5)notnull )CreatetableType( Vtypechar(20)primarykey; Tnamechar(20)notnull )CreatetableHire( Hidchar(5)primarykey, Vidchar(10)notnull, Hamountchar(5), Htimedate, Hredate, Hmoneyint, Hstatechar(2)notnull, UserIDchar(9)notnull )CreatetableSale( UserIDchar(9)primarykey, Vidchar(10)primarykey, Samountchar(5)notnull,
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年大學(xué)農(nóng)學(xué)(農(nóng)村社會(huì)學(xué))試題及答案
- 2025年大學(xué)大一(水產(chǎn)養(yǎng)殖學(xué))水產(chǎn)養(yǎng)殖生態(tài)學(xué)基礎(chǔ)階段測(cè)試試題及答案
- 2026年客運(yùn)司機(jī)(車(chē)輛檢查)試題及答案
- 2025年高職鐵道工程技術(shù)(鐵道施工基礎(chǔ))試題及答案
- 2025年大學(xué)健康管理(慢病實(shí)操)試題及答案
- 2025年高職高分子材料工程技術(shù)(高分子工程工藝)試題及答案
- 2025年高職形象設(shè)計(jì)(婚慶造型設(shè)計(jì))試題及答案
- 2025年高職應(yīng)用心理學(xué)(咨詢(xún)技巧)試題及答案
- 2025年高職(客戶(hù)關(guān)系管理)客戶(hù)維護(hù)單元測(cè)試試題及答案
- 2026年運(yùn)動(dòng)營(yíng)養(yǎng)(健身補(bǔ)劑選擇)試題及答案
- 原發(fā)性骨髓纖維化2026
- 2023-2024學(xué)年北京市海淀區(qū)清華附中八年級(jí)(上)期末數(shù)學(xué)試卷(含解析)
- 臨終決策中的醫(yī)患共同決策模式
- 2025年貴州省輔警考試真題附答案解析
- 半導(dǎo)體廠務(wù)項(xiàng)目工程管理 課件 項(xiàng)目6 凈化室系統(tǒng)的設(shè)計(jì)與維護(hù)
- 防護(hù)網(wǎng)施工專(zhuān)項(xiàng)方案
- 2026年及未來(lái)5年市場(chǎng)數(shù)據(jù)中國(guó)聚甲醛市場(chǎng)運(yùn)行態(tài)勢(shì)及行業(yè)發(fā)展前景預(yù)測(cè)報(bào)告
- TCFLP0030-2021國(guó)有企業(yè)網(wǎng)上商城采購(gòu)交易操作規(guī)范
- 玻璃鋼水箱安裝詳細(xì)技術(shù)方案
- 2025廣東省佛山市南海公證處招聘公證員助理4人(公共基礎(chǔ)知識(shí))測(cè)試題附答案解析
- 山東省煙臺(tái)市開(kāi)發(fā)區(qū)2024-2025學(xué)年上學(xué)期期末八年級(jí)數(shù)學(xué)檢測(cè)題(含答案)
評(píng)論
0/150
提交評(píng)論