![高校教材管理系統(tǒng)_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/14/bb30fe57-dc34-4d7d-ae80-31f9d3726f67/bb30fe57-dc34-4d7d-ae80-31f9d3726f671.gif)
![高校教材管理系統(tǒng)_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/14/bb30fe57-dc34-4d7d-ae80-31f9d3726f67/bb30fe57-dc34-4d7d-ae80-31f9d3726f672.gif)
![高校教材管理系統(tǒng)_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/14/bb30fe57-dc34-4d7d-ae80-31f9d3726f67/bb30fe57-dc34-4d7d-ae80-31f9d3726f673.gif)
![高校教材管理系統(tǒng)_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/14/bb30fe57-dc34-4d7d-ae80-31f9d3726f67/bb30fe57-dc34-4d7d-ae80-31f9d3726f674.gif)
![高校教材管理系統(tǒng)_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-2/14/bb30fe57-dc34-4d7d-ae80-31f9d3726f67/bb30fe57-dc34-4d7d-ae80-31f9d3726f675.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、大型數(shù)據(jù)庫開發(fā)與設(shè)計(jì)題 目: 高校教材管理系統(tǒng) 學(xué) 號(hào): 姓 名: 班 級(jí): 目錄背景 1一、需求分析11.1 開發(fā)目的 11.2 功能需求 21.3 開發(fā)及運(yùn)行環(huán)境 21.4 性能需求21.5 安全性需求21.6完整性需求21.7 處理需求31.8 設(shè)計(jì)和實(shí)現(xiàn)上的限制31.9 用戶界面31.10 數(shù)據(jù)流程圖31.11數(shù)據(jù)字典4二、概念結(jié)構(gòu)設(shè)計(jì):52.1 ER圖52.2 CDM圖9三、邏輯結(jié)構(gòu)設(shè)計(jì)93.1 對(duì)于實(shí)體型間的聯(lián)系有以下不同情況93.2 將ER圖轉(zhuǎn)換成關(guān)系模式93.3 各實(shí)體的屬性的關(guān)系類型表10四、 物理結(jié)構(gòu)設(shè)計(jì):124.1 PDM圖124.
2、2 建立表124.3查詢194.4 刪除194.5 數(shù)據(jù)庫觸發(fā)器的實(shí)現(xiàn)204.6數(shù)據(jù)庫的存儲(chǔ)過程21建立存儲(chǔ)過程214.6.2 存儲(chǔ)過程修改21存儲(chǔ)過程的執(zhí)行224.7 視圖22五、總結(jié):23高校教材管理系統(tǒng)背景 在高速發(fā)展的當(dāng)今信息社會(huì),越來越多的工作都已經(jīng)將計(jì)算機(jī)引入了其中,并且成為了其中不可或缺的一個(gè)重要部分。利用計(jì)算機(jī)進(jìn)行各項(xiàng)管理與協(xié)調(diào),將能大大的提高工作的效率,減小工作強(qiáng)度;在相同的工作強(qiáng)度情況下,利用計(jì)算機(jī)進(jìn)行工作,能比原來的老式工作方式提高數(shù)倍乃至數(shù)十倍的工作的效率,可以大大的減少各項(xiàng)人力及物資損耗,從而使得能夠?qū)⒍嘤嗟娜肆巴度氲礁枰牡胤饺?。高校管理?dāng)然也不例外
3、,所以教材管理的計(jì)算機(jī)化已刻不容緩。教材管理對(duì)于各個(gè)學(xué)校而言,都是一項(xiàng)很復(fù)雜、煩瑣的工作, 是高校教務(wù)管理中的一個(gè)重要環(huán)節(jié), 由于大學(xué)專業(yè)設(shè)置門類多,各專業(yè)每期開設(shè)課程的種類多,其業(yè)務(wù)不僅涉及出版部門,而且要面對(duì)全校各系的授課教師,各班級(jí)的學(xué)生,教材科要管理的入出庫教材種類非常多,涉及到的人員廣,工作量大,再者是近些年來,我國高等教育規(guī)模不斷擴(kuò)大,學(xué)校學(xué)生人數(shù)迅速增加,使得教材管理工作更加繁重不堪。所以,一套好的高校教材管理軟件,不但能夠大大降低工作人員的勞動(dòng)強(qiáng)度,而且還能提高學(xué)校的管理效率和教學(xué)水平。 學(xué)校教材管理主要是由教材計(jì)劃制定、采購、入庫、發(fā)放、記賬、
4、結(jié)算等一系列工作所組成,該工作各院校都有專門機(jī)構(gòu)負(fù)責(zé)該項(xiàng)工作,通常是教材科。由于學(xué)校中專業(yè)設(shè)置門類多,各專業(yè)每期開設(shè)課程種類多,各個(gè)專業(yè)需要訂購的課本也不一樣,在每學(xué)期開學(xué)的時(shí)候教材的發(fā)放便成為了一個(gè)繁重的任務(wù)。每期教材科管理的入出庫教材種類少則幾百多則幾千種,涉及教材冊(cè)數(shù)少則幾千多則幾萬,涉及人員廣,工作量大,再者特別是近年來,我國高等教育規(guī)模的不斷擴(kuò)大,學(xué)校學(xué)生人數(shù)迅速增加,使教材管理工作更加繁重不堪。據(jù)調(diào)查,到目前為止,我國還有許多學(xué)校甚至是一些重點(diǎn)院校的教材管理仍為手工管理方式,這種現(xiàn)狀不但與現(xiàn)實(shí)學(xué)校教材管理的業(yè)務(wù)需求不相適應(yīng),并且也與學(xué)校信息化建設(shè)的發(fā)展趨勢(shì)不相適應(yīng),因此,學(xué)校教材管
5、理人員目前迫切需要一套方便、高效的計(jì)算機(jī)化的管理信息系統(tǒng)來代替他們繁瑣、低效的傳統(tǒng)手工管理方式,并最終實(shí)現(xiàn)教材管理的全面自動(dòng)化。 因此,教材管理水平的高低直接影響教學(xué)工作的進(jìn)行、教學(xué)質(zhì)量的提高和合格人才的培養(yǎng),開發(fā)和使用高校教材管理信息系統(tǒng)是改善和提高教材管理水平的一個(gè)重要途徑。一、需求分析1.1 開發(fā)目的 本課題旨在解決我校和其他高校教材管理工作還是依靠教材管理人員的手工管理的現(xiàn)狀,并且在現(xiàn)有基礎(chǔ)上考慮了如何完善和解決現(xiàn)有的兩層結(jié)構(gòu)的C/S(客戶端/服務(wù)器)教材系統(tǒng)本身所固有的缺陷,把兩層結(jié)構(gòu)中服務(wù)器部分和客戶端部分的應(yīng)用單獨(dú)劃分出來,從而滿足大型系統(tǒng)的需求。通過本系統(tǒng)不僅可以方
6、便教材管理人員管理教材,還可以方便教務(wù)部門和廣大師生查詢教材和查看教材管理記錄 本系統(tǒng)使用SQL Server 2008 Express數(shù)據(jù)庫作為后臺(tái)的數(shù)據(jù)管理系統(tǒng),利用ADO數(shù)據(jù)庫組件連接后臺(tái)數(shù)據(jù)庫。開發(fā)采用的是C#,它是由Microsoft公司開發(fā)的Windows程序開發(fā)環(huán)境,是現(xiàn)在最受歡迎的幾種開發(fā)工具之一.1.2 功能需求 (1) 由于操作人員的計(jì)算機(jī)水平有限,因此要求系統(tǒng)具有良好的人機(jī)界面。(2) 方便的數(shù)據(jù)查詢,支持多條件查詢。 (3) 系統(tǒng)支持良好的數(shù)據(jù)備份和還原操作,有效保護(hù)數(shù)據(jù),減少意外損失
7、。(4) 數(shù)據(jù)計(jì)算自動(dòng)完成,盡量較少人工干預(yù)。(5) 報(bào)表分析教材進(jìn)貨,教材銷售情況。 (6) 強(qiáng)大的報(bào)表打印功能。 (7) 報(bào)表基本信息查詢時(shí),可根據(jù)查詢條件動(dòng)態(tài)顯示查詢結(jié)果。 (8)報(bào)表分析過程中,可根據(jù)條件動(dòng)態(tài)分析報(bào)表數(shù)據(jù)。1.3 開發(fā)及運(yùn)行環(huán)境 系統(tǒng)開發(fā)平臺(tái):Microsoft Visual Studio 2008 系統(tǒng)開發(fā)語言:C# 數(shù)據(jù)庫管理系統(tǒng)軟件:SQL Server 2008運(yùn)行平臺(tái):Windows XP(SP2),Windows
8、 2000(SP4),Windows Server 2003(SP1)分辨率:最佳效果1024X768像素。1.4 性能需求(1) 數(shù)據(jù)庫服務(wù)器支持多客戶端訪問。(2) 數(shù)據(jù)的安全性與完整性高,數(shù)據(jù)訪問正確率在99.99%。(3) 數(shù)據(jù)庫表能正確、及時(shí)反映最新內(nèi)容的更新。(4) 服務(wù)器在多客戶端訪問時(shí)能正常穩(wěn)定工作。1.5 安全性需求(1) 系統(tǒng)能抵御瑞星網(wǎng)上公布的病毒的攻擊而不至于癱瘓。(2) 系統(tǒng)能安全的防范對(duì)數(shù)據(jù)庫內(nèi)容不安全的訪問和操作。(3) 系統(tǒng)能在斷電的情況下,依靠UPS電源確保數(shù)據(jù)庫內(nèi)容的完整性和安全性。(4) 數(shù)據(jù)庫服務(wù)端應(yīng)具備系統(tǒng)使用期間2小時(shí)備
9、份一次數(shù)據(jù)庫的功能。(5) 系統(tǒng)應(yīng)用驗(yàn)證用戶權(quán)限方可使用的功能保障。1.6完整性需求當(dāng)向數(shù)據(jù)庫中插入、修改時(shí),系統(tǒng)能夠辨別輸入的數(shù)據(jù)是否符合語義,不能的則不能修改成功。1.7 處理需求能夠存儲(chǔ)教材的基本信息,并方便有效的進(jìn)行相應(yīng)的教材信息數(shù)據(jù)操作和管理,這主要包括:1)教材的出庫與入庫信息的錄入,刪除及修改2)教材信息的多關(guān)鍵字檢索查詢能夠?qū)滩牡姆N類價(jià)格等進(jìn)行相應(yīng)的信息存儲(chǔ)與管理,這其中包括:1)出庫和入庫信息的及時(shí)添加刪除及更新2)學(xué)生和班級(jí)信息的管理3)出庫和入庫信息數(shù)量、價(jià)格的統(tǒng)計(jì)與查詢能夠提供一定的安全機(jī)制,提供數(shù)據(jù)信息授權(quán)訪問,防止隨意刪改,查詢。對(duì)查詢,統(tǒng)計(jì)的結(jié)果能夠列表顯示1.
10、8 設(shè)計(jì)和實(shí)現(xiàn)上的限制 限于網(wǎng)絡(luò)配置和C/S結(jié)構(gòu)程序的網(wǎng)絡(luò)編程實(shí)現(xiàn)問題,部分功能可能實(shí)現(xiàn)不完美,甚至是暫時(shí)無法實(shí)現(xiàn)。1.9 用戶界面能完全、直觀的體現(xiàn)系統(tǒng)功能,用戶能方便快捷的執(zhí)行某種教材管理工作,能適應(yīng)屏顯分辨率的調(diào)整,友好、可操作性強(qiáng)。1.10 數(shù)據(jù)流程圖高校教材管理系統(tǒng)的系統(tǒng)功能流程圖:高校教材管理系統(tǒng)的系統(tǒng)業(yè)務(wù)流程圖:1.11數(shù)據(jù)字典數(shù)據(jù)字典是指對(duì)數(shù)據(jù)的數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)、處理邏輯、外部實(shí)體等進(jìn)行定義和描述,其目的是對(duì)數(shù)據(jù)流程圖中的各個(gè)元素做出詳細(xì)的說明。是一種用戶可以訪問的記錄數(shù)據(jù)庫和應(yīng)用程序源數(shù)據(jù)的目錄。數(shù)據(jù)字典最重要的作用是作為分析階段的工具。數(shù)據(jù)字典最重要的用途
11、都是供人查詢對(duì)不了解的條目的解釋,在結(jié)構(gòu)化分析中,數(shù)據(jù)字典的作用是給數(shù)據(jù)流圖上每個(gè)成分加以定義和說明。換句話說,數(shù)據(jù)流圖上所有的成分的定義和解釋的文字集合就是數(shù)據(jù)字典,而且在數(shù)據(jù)字典中建立的一組嚴(yán)密一致的定義很有助于改進(jìn)分析員和用戶的通信。數(shù)據(jù)庫數(shù)據(jù)字典不僅是每個(gè)數(shù)據(jù)庫的中心,而且對(duì)每個(gè)用戶也是非常重要的信息。用戶可以用SQL語句訪問數(shù)據(jù)庫數(shù)據(jù)字典。下面是本系統(tǒng)中的數(shù)據(jù)字典。名字:用戶信息描述:使用該軟件的人員信息定義:用戶信息=登陸賬號(hào)+真實(shí)名字+登陸密碼+班級(jí)名字:教材基本信息描述:各種教材的詳細(xì)信息定義:教材信息=教材編號(hào)+教材名稱+教材作者+出版社+教材版本號(hào)名字:入庫信息描述:每一種
12、教材的入庫詳細(xì)信息定義:入庫信息=教材編號(hào)+教材名稱+入庫單號(hào) +單價(jià)+出版社+數(shù)量+入庫時(shí)間名字:訂購信息描述:每一種教材訂購的詳細(xì)信息定義:訂購信息=訂購單號(hào)+教材編號(hào)+教材名稱+數(shù)量+單價(jià)+供應(yīng)商+訂購日期名字:出庫信息描述:每一種教材的出庫詳細(xì)信息定義:出庫信息=教材編號(hào)+教材名稱+數(shù)量+單價(jià)+出版社+班級(jí)名字:管理員信息描述:管理教材的入庫和出庫的詳細(xì)信息定義:管理員信息=編號(hào)+姓名+性別+電話名字:供應(yīng)商信息描述:為需求單位提供教材定義:供應(yīng)商信息=編號(hào)+名稱+地址+負(fù)責(zé)人+電話二、概念結(jié)構(gòu)設(shè)計(jì): 概念結(jié)構(gòu)設(shè)計(jì)就是對(duì)信息世界進(jìn)行建模,常用的概念模型是ER模型, 每一個(gè)實(shí)體型的ER圖
13、。這里我們是對(duì)高校教材管理系統(tǒng)進(jìn)行建模,我們把涉及到的實(shí)體型,教材和班級(jí)學(xué)生、教材的入庫管理、出庫管理、供應(yīng)商、管理員及印刷社等。用ER圖表示出來。 概念結(jié)構(gòu)設(shè)計(jì)的任務(wù)是在需求分析階段產(chǎn)生的需求說明書的基礎(chǔ)上,按照特定的方法把它們抽象為一個(gè)不依賴于任何具體機(jī)器的數(shù)據(jù)模型,即概念模型。概念模型使設(shè)計(jì)者的注意力能夠從復(fù)雜的實(shí)現(xiàn)細(xì)節(jié)中解脫出來,而只集中在最重要的信息的組織結(jié)構(gòu)和處理模式上。利用實(shí)體關(guān)系圖來實(shí)現(xiàn).它描述系統(tǒng)中的各個(gè)實(shí)體以及相關(guān)實(shí)體之間的關(guān)系,是系統(tǒng)特性和靜態(tài)描述.數(shù)據(jù)字典也將是系統(tǒng)進(jìn)一步開發(fā)的基礎(chǔ)。2.1 ER圖下面是各實(shí)體的ER圖:班級(jí):出版社:訂購管理:出庫管理:學(xué)生:入庫管理:供
14、應(yīng)商管理:高校教材管理系統(tǒng)實(shí)現(xiàn)各種管理工作,根據(jù)使用者學(xué)生與供應(yīng)商、管理員管理、入庫管理、出庫的管理、印刷社、教材的關(guān)系,構(gòu)化出本系統(tǒng)整體的ER圖:2.2 CDM圖三、邏輯結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫的邏輯結(jié)構(gòu)設(shè)計(jì)就是把概念結(jié)構(gòu)設(shè)計(jì)階段設(shè)計(jì)好的基本ER圖轉(zhuǎn)換為與選用的 DBMS產(chǎn)品所支持的數(shù)據(jù)模型相符合的邏輯結(jié)構(gòu)。由于目前使用的數(shù)據(jù)庫基本上都是關(guān)系數(shù)據(jù)庫,因此首先需要將ER圖轉(zhuǎn)換為關(guān)系模型,然后根據(jù)具體DBMS的特點(diǎn)和限制轉(zhuǎn)換為特定的DBMS支持下的數(shù)據(jù)模型,最后進(jìn)行優(yōu)化。在本系統(tǒng)中我們選用的數(shù)據(jù)庫環(huán)境是SQL srver2008。 3.1 對(duì)于實(shí)體型間的聯(lián)系有以下不同情況(1) 一個(gè)1:1聯(lián)系可以轉(zhuǎn)換成一
15、個(gè)獨(dú)立的關(guān)系模式,也可以與任意一段對(duì)應(yīng)的關(guān)系模式合并。(2) 一個(gè)1:n聯(lián)系可以轉(zhuǎn)換成一個(gè)獨(dú)立的關(guān)系模式,也可以與n端對(duì)應(yīng)的關(guān)系模式合并。(3) 一個(gè)m:n聯(lián)系可以轉(zhuǎn)換成一個(gè)關(guān)系模式。(4) 3個(gè)或3個(gè)以上實(shí)體間的一個(gè)多元聯(lián)系可以轉(zhuǎn)換為一個(gè)關(guān)系模式。(5) 具有相同碼的關(guān)系模式可以合并。3.2 將ER圖轉(zhuǎn)換成關(guān)系模式教材(教材編號(hào),教材名稱,類型編號(hào),訂書單位,出版社名稱,出版時(shí)間,作者,印張,數(shù)量,字?jǐn)?shù),入庫時(shí)間)班級(jí)(班級(jí)編號(hào),班級(jí)名稱,人數(shù),班長(zhǎng),班長(zhǎng)號(hào)碼,班主任,班主任號(hào)碼,學(xué)院系,學(xué)校,入學(xué)時(shí)間)學(xué)生(學(xué)號(hào),姓名,學(xué)院系,學(xué)校,班級(jí))出庫(教材編號(hào),教材名稱,數(shù)量,單價(jià),班級(jí)編號(hào),出
16、版社編號(hào),出版時(shí)間,出庫時(shí)間,負(fù)責(zé)人)入庫(教材編號(hào),教材名稱,數(shù)量,單價(jià),出版社,入庫時(shí)間,作者,負(fù)責(zé)人)管理員(管理員編號(hào),管理員名字,性別,電話)供應(yīng)商(供應(yīng)商編號(hào),供應(yīng)商名稱,供應(yīng)商地址,電話,負(fù)責(zé)人)訂購(訂單編號(hào),教材編號(hào),教材名稱,單價(jià),數(shù)量)出版社(出版社編號(hào),出版社名稱,電話,負(fù)責(zé)人,地址)。(橫線化的表示是主鍵)3.3 各實(shí)體的屬性的關(guān)系類型表教材表中的項(xiàng)、數(shù)據(jù)類型即相關(guān)作用:字段名數(shù)據(jù)類型字符約束教材編號(hào)char(14)Primary key not null教材名稱varchar(10)Not null類型編號(hào)char(14)Not null訂書單位varhar(10)
17、null出版社名稱char(10)Not null出版時(shí)間timenull作者varhar(10)null印張intnull數(shù)量intnull班級(jí)表中的項(xiàng)、數(shù)據(jù)類型即相關(guān)作用:班級(jí)編號(hào)char(10)Primary key Not null班級(jí)名稱varhar(10)Not null人數(shù)intnull班長(zhǎng)char(10)null班主任char(10)null學(xué)校varhar(10)null學(xué)院系varhar(10)null供應(yīng)商表中的項(xiàng)、數(shù)據(jù)類型即相關(guān)作用:電話char(11)null負(fù)責(zé)人varhar(4)null地址varhar(10)null供應(yīng)商編號(hào)char(10)Not null供應(yīng)
18、商名稱varhar(10)Primary key Not null管理員表中的項(xiàng)、數(shù)據(jù)類型即相關(guān)作用:管理員編號(hào)Char(10)Primary key Not null管理員名字varhar(10)Not null性別char(2)null電話char(10)null地址varhar(10)null學(xué)生表中的項(xiàng)、數(shù)據(jù)類型即相關(guān)作用:學(xué)號(hào)Char(10)Primary key Foreign key Not null姓名varhar(4)Not null學(xué)院系varhar(10)null學(xué)校varhar(10)null班級(jí)varhar(10)null出庫表中的項(xiàng)、數(shù)據(jù)類型即相關(guān)作用:教材編號(hào)ch
19、ar(14)Primary key Foreign key Not null教材名稱varhar(10)Not null班級(jí)編號(hào)char(14)Primary key Foreign key Not null數(shù)量intnull單價(jià)Float(5)null負(fù)責(zé)人varhar(4)null出庫時(shí)間timenull出版社編號(hào)char(14)null出版時(shí)間timenull入庫表中的項(xiàng)、數(shù)據(jù)類型即相關(guān)作用:教材編號(hào)char(14)Primary key Foreign key Not null教材名稱varhar(10)Not null管理員編號(hào)char(14)Primary key Foreign
20、key Not null數(shù)量intnull單價(jià)float(5)null負(fù)責(zé)人varhar(4)null入庫時(shí)間timenull出版社varhar(14)null作者varhar(4)null4、 物理結(jié)構(gòu)設(shè)計(jì):4.1 PDM圖4.2 建立表 根據(jù)CDM和PDM的信息及聯(lián)系創(chuàng)建表,并將每一個(gè)表進(jìn)行插入數(shù)據(jù),程序如下,并附有表:create table 班級(jí) ( 班級(jí)編號(hào) char(10) not null, 班級(jí)名稱 varchar(5) not null, 人數(shù) char(2) null, 班長(zhǎng) char(10) null, 班長(zhǎng)電話 char(11) null, 班主任 char(10) n
21、ull, 班主任電話 char(11) null, 學(xué)院系 varchar(10) null, 學(xué)校 varchar(10) null, 入學(xué)時(shí)間 time null, constraint PK_班級(jí) primary key (班級(jí)編號(hào));insert into 班級(jí) values('0001','計(jì)本信息學(xué)院','西財(cái)', 123000)insert into 班級(jí) values('0002','計(jì)本信息學(xué)院','郵電', 130300)insert into 班級(jí) values('00
22、03','軟件信息學(xué)院','西財(cái)', 112300)insert into 班級(jí) values('0004','電子信息學(xué)院','郵電', 123010)insert into 班級(jí) values('0005','網(wǎng)絡(luò)','38','1信息學(xué)院','理工', 123022)insert into 班級(jí) values('0006','軟件信息學(xué)院','科技',133000)inser
23、t into 班級(jí) values('0007','網(wǎng)絡(luò)信息學(xué)院','科技', 123330)insert into 班級(jí) values('0008','電子信息學(xué)院','理工',156000)select * from 班級(jí);create table 出版社 ( 出版社編號(hào) char(14) not null, 出版社名稱 varchar(7) not null, 電話 char(11) null, 負(fù)責(zé)人 varchar(4) null, 地址 varchar(11) null, constrai
24、nt PK_出版社 primary key (出版社編號(hào));insert into 出版社 values('1235','清華張三','北京')insert into 出版社 values('1223','北京李四','北京')insert into 出版社 values('1333','郵電王二','西安')insert into 出版社 values('2345','麻省李磊','美國')insert
25、 into 出版社 values('7865','哈弗美國')select * from 出版社;create table 出庫 ( 教材編號(hào) char(14) not null, 班級(jí)編號(hào) char(10) not null, 教材名稱 varchar(10) null, 數(shù)量 numeric(10) null, 單價(jià) float(5) null, 出版社編號(hào) char(14) null, 出版時(shí)間 date null, 出庫時(shí)間 date null, 負(fù)責(zé)人 varchar(4) null, constraint PK_出庫 primary key clus
26、tered (教材編號(hào), 班級(jí)編號(hào));insert into 出庫 values('0001','ISBN1205290101','數(shù)學(xué)',40,22.5,'0001','1235','王磊')insert into 出庫 values('0002','ISBN1205290102','英語',44,26.5,'0002','1223','施磊')insert into 出庫 values('00
27、03','ISBN1205290103','語文',39,35.5,'0003','1233','郭靖')insert into 出庫 values('0004','ISBN1205290104','物理',33,32.5,'0004','2345','瑪麗')insert into 出庫 values('0005','ISBN1205290105','c語言',3
28、8,28.5,'0005','7865','馬克')select * from 出庫;create table 訂購 ( 供應(yīng)商編號(hào) char(14) not null, 教材編號(hào) char(14) not null, 訂單編號(hào) char(14) null, 教材名稱 varchar(10) null, 單價(jià) float(5) null, 數(shù)量 numeric(10) null, constraint PK_訂購 primary key clustered (供應(yīng)商編號(hào), 教材編號(hào));insert into 訂購 values('01
29、39;,'ISBN1205290101','01234','數(shù)學(xué)',22.5,1000)insert into 訂購 values('02','ISBN1205290102','01244','英語',32.5,2000)insert into 訂購 values('03','ISBN1205290103','01254','語文',42.5,1500)insert into 訂購 values('04'
30、,'ISBN1205290104','01264','物理',52.5,1070)insert into 訂購 values('05','ISBN1205290105','01274','c語言',27.5,1005)select * from 訂購;create table 供應(yīng)商 ( 供應(yīng)商編號(hào) char(14) not null, 供應(yīng)商名稱 varchar(10) not null, 供應(yīng)商地址 varchar(10) null, 供應(yīng)商電話 char(11) null, 供
31、應(yīng)商負(fù)責(zé)人 char(4) null, constraint PK_供應(yīng)商 primary key (供應(yīng)商編號(hào));insert into 供應(yīng)商 values('01','西屋','北京insert into 供應(yīng)商 values('02','清華','上海insert into 供應(yīng)商 values('03','阿里','西安insert into 供應(yīng)商 values('04','科技','江蘇,'ato')ins
32、ert into 供應(yīng)商 values('05','書屋','深圳select * from 供應(yīng)商;create table 管理員 ( 管理員編號(hào) char(14) not null, 管理員姓名 varchar(5) not null, 性別 char(2) null, 電話 char(11) null, constraint PK_管理員 primary key (管理員編號(hào))insert into 管理員 values('0101','提提','男insert into 管理員 values('0
33、103','楊洋','女insert into 管理員 values('0104','安宇','男insert into 管理員 values('0105','歐陽','男select * from 管理員;create table 教材 ( 教材編號(hào) char(14) not null, 教材名稱 varchar(10) not null, 類型編號(hào) char(14) not null, 訂書單位 varchar(10) null, 出版社名稱 varchar(7) null, 出
34、版時(shí)間 date null, 作者 varchar(4) null, 印張 int null, 單價(jià) float(5) null, 數(shù)量 int null, 入庫時(shí)間 date null, 字?jǐn)?shù) integer null, constraint PK_教材 primary key (教材編號(hào));insert into 教材 values('ISBN1205290101','數(shù)學(xué)','200','西財(cái)','清華','邵超',300,23.5,1000,1000000)insert into 教材 va
35、lues('ISBN1205290102','英語','300','郵電','北京','張斌',400,33.5,2000,2000000)insert into 教材 values('ISBN1205290103','語文','400','科技','郵電','張榮',334,43.5,1500,1700000)insert into 教材 values('ISBN1205290104',
36、'物理','500','理工','麻省','韓萬',456,53.5,1070,2200000)insert into 教材 values('ISBN1205290105','c語言','600','哈弗','哈弗','姜麗',675,26.5,1005,4300000)select * from 教材;create table 入庫 ( 管理員編號(hào) char(14) not null, 教材編號(hào) char(14) no
37、t null, 教材名稱 varchar(10) null, 出版社 varchar(10) null, 數(shù)量 numeric(10) null, 入庫時(shí)間 date null, 單價(jià) float(5) null, 作者 varchar(4) null, 負(fù)責(zé)人 varchar(4) null, constraint PK_入庫 primary key clustered (管理員編號(hào), 教材編號(hào));insert into 入庫 values('0101','ISBN1205290101','數(shù)學(xué)','清華',1000,23.5,
38、'邵超','張凱')insert into 入庫 values('0102','ISBN1205290102','英語','北京',2000,33.5,'張斌','王輝')insert into 入庫 values('0103','ISBN1205290103','語文','西安',1500,43.5,'張榮','韓凱')insert into 入庫 values('
39、;0104','ISBN1205290104','物理','麻省',1070,53.5,'韓萬','劉軍')insert into 入庫 values('0105','ISBN1205290105','c語言','哈佛',1005,27.5,'姜麗','王五')select * from 入庫;create table 學(xué)生 ( 學(xué)號(hào) char(10) not null, 班級(jí)編號(hào) char(10) null,
40、姓名 varchar(4) not null, 學(xué)校 varchar(10) null, 院系 varchar(10) null, 書費(fèi) char(6) null, constraint PK_學(xué)生 primary key (學(xué)號(hào));insert into 學(xué)生 values('12051','0001','李麗','西財(cái)','信息學(xué)院',6000)insert into 學(xué)生 values('12052','0002','楊宇','理工','
41、信息學(xué)院',7000)insert into 學(xué)生 values('12053','0005','張宇','郵電','信息學(xué)院',8000)insert into 學(xué)生 values('12054','0003','馬云','麻省','信息學(xué)院',9000)insert into 學(xué)生 values('12055','0004','周語','哈佛','信息學(xué)
42、院',10000)select * from 學(xué)生;create table 印刷 ( 出版社編號(hào) char(14) not null, 教材編號(hào) char(14) not null, constraint PK_印刷 primary key clustered (出版社編號(hào), 教材編號(hào));insert into 印刷 values('1223','ISBN1205290101')insert into 印刷 values('1235','ISBN1205290102')insert into 印刷 values('
43、;1333','ISBN1205290103')insert into 印刷 values('2345','ISBN1205290104')insert into 印刷 values('7865','ISBN1205290105')select * from 印刷;4.3查詢查詢出庫和入庫中的教材數(shù)量,編程語句如下:select 教材.教材編號(hào),教材.教材名稱,出庫.數(shù)量,入庫.數(shù)量from 出庫,入庫,教材where 教材.教材編號(hào) = 出庫.教材編號(hào) and 教材.教材編號(hào)=入庫.教材編號(hào)4.4 刪除刪
44、除入庫中的一條信息,編程語句如下:delete from 入庫 where 教材編號(hào) = 'ISBN1205290105'4.5 數(shù)據(jù)庫觸發(fā)器的實(shí)現(xiàn)觸發(fā)器是SQL Server 提供的除約束之外的另一種保證數(shù)據(jù)完整性的方法,它可以實(shí)現(xiàn)約束所不能實(shí)現(xiàn)的更復(fù)雜的完整性要求。觸發(fā)器是一種特殊的存儲(chǔ)過程,它不予許帶參數(shù),不能有用戶直接通過名稱調(diào)用,而是由用戶的某一動(dòng)作自動(dòng)觸發(fā)。在本項(xiàng)目中通過建立觸發(fā)器來自動(dòng)更新出庫與入庫中的數(shù)量。入庫與庫存的關(guān)系 教材入庫時(shí),可以通過觸發(fā)程序利用教材編碼相同來檢索庫存里是否有該書的庫存記錄,如果存在該書的記錄,則在原有的記錄上增加;如果庫存
45、里沒有該書的庫存記錄,則新增加該書的庫存記錄。完成對(duì)庫存表的更新,減少了重復(fù)輸入的麻煩,程序如下:create trigger updata_kucun on 入庫 for insertasdeclare shl int,bh char(10)select bh = 教材編號(hào),shl = 數(shù)量 from insertedif exists(select * from kucun where 教材編碼 = bh )update kucun set 數(shù)量 = 數(shù)量 + shl where 教材編碼 = bhelse if exists(select * from kucun where 教材編號(hào)&
46、lt;>bh)begininsert into kucun(教材編號(hào),數(shù)量) values (bh,shl)end begin Raiserror('入庫量等于庫存量',16,2) rollback transaction end出庫與庫存的關(guān)系 管理人員將教材出庫時(shí),通過觸發(fā)程序利用教材編碼相同來檢索該教材是否存在于庫存中,如果存在且出庫數(shù)量不大于庫存數(shù)量,則在庫存數(shù)量上減少相應(yīng)的數(shù)量,如果不存在,則說明,輸入的教材編碼有誤,系統(tǒng)提示錯(cuò)誤信息,同時(shí),如果該教材存在,但出庫的數(shù)量大于庫存的數(shù)量,則系統(tǒng)提示錯(cuò)誤信息,并重新輸入。代碼如下:create trigg
47、er update_kucun on 出庫for insertasdeclare shl int,bh char(10),shj datetimeselect bh = 教材編號(hào),shl = 數(shù)量 from insertedif exists(select * from kucun where 教材編碼 = bh and shl <= 數(shù)量)update kucun set kucun.數(shù)量 = kucun.數(shù)量 - shl where 教材編碼 = bhelse begin Raiserror('出入量大于庫存量',16,2) rollback transaction
48、end Raiserror('入庫量等于庫存量',16,2) rollback transaction end4.6數(shù)據(jù)庫的存儲(chǔ)過程 存儲(chǔ)過程與表、視圖一樣,是一種存儲(chǔ)在數(shù)據(jù)庫中的對(duì)象。它與其他編程語言中的過程類似;同時(shí),存儲(chǔ)過程也可以向調(diào)用過成或批處理返回狀態(tài)值,以指明成功或失敗等。存儲(chǔ)過程與函數(shù)不同,因?yàn)榇鎯?chǔ)過程不返回取代其名稱的值,因此不能直接在表達(dá)式中使用。存儲(chǔ)過程只需編譯一次,以后即可多次執(zhí)行,因此使用存儲(chǔ)過程可以提高性能。4.6.1建立存儲(chǔ)過程通過建立存儲(chǔ)過程來統(tǒng)計(jì)各種教材的訂購,出庫和入庫,編程語言如下:create Proc Query_tongji(dingg
49、ou_bh char(14)output,ruku_shl int output,chuku_shl int output)asselect dinggou_bh = 訂購.教材編號(hào),ruku_shl =入庫.數(shù)量,chuku_shl = 出庫.數(shù)量from 訂購,出庫, 入庫4.6.2 存儲(chǔ)過程修改對(duì)存儲(chǔ)過程進(jìn)行修改,增加了一個(gè)參數(shù),編程語言如下:ALTER Proc Query_tongji(dinggou_bh char(14)output,ruku_shl int output,chuku_shl int output,jiaocai_lxbh char(14) output)asselect dinggou_bh = 訂購.教材編號(hào),ruku_
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- Unit 5 We're family (說課稿)-2024-2025學(xué)年外研版(三起)(2024)英語三年級(jí)上冊(cè)
- 1《學(xué)習(xí)伴我成長(zhǎng)》(說課稿)-部編版道德與法治三年級(jí)上冊(cè)
- Unit 2 Different families Part B Let's talk(說課稿)-2024-2025學(xué)年人教PEP版(2024)英語三年級(jí)上冊(cè)
- 2《用水計(jì)量時(shí)間》說課稿-2024-2025學(xué)年科學(xué)五年級(jí)上冊(cè)教科版
- 2025產(chǎn)品購銷合同樣書
- 2023九年級(jí)數(shù)學(xué)下冊(cè) 第25章 投影與視圖25.1 投影第2課時(shí) 正投影說課稿 (新版)滬科版001
- 2025城市民用戶燃?xì)夤こ虒?shí)施合同書范本范文
- 2025婦女發(fā)展監(jiān)測(cè)評(píng)估項(xiàng)目工程合同管理
- 2025合同模板合伙人利潤分配協(xié)議范本
- 2024-2025學(xué)年高中政治 第3單元 第6課 第1框 源遠(yuǎn)流長(zhǎng)的中華文化說課稿 新人教版必修3001
- 2025年上半年中煤科工集團(tuán)北京華宇工程限公司中層干部公開招聘易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
- 特朗普就職演說全文與核心要點(diǎn)
- 2025年教科版新教材科學(xué)小學(xué)一年級(jí)下冊(cè)教學(xué)計(jì)劃(含進(jìn)度表)
- 北京市海淀區(qū)2024-2025學(xué)年五年級(jí)上冊(cè)語文期末試卷(有答案)
- 《中國地方戲曲簡(jiǎn)介》課件
- 《亞太經(jīng)合組織》課件
- 2024年高考政治必修三《政治與法治》??疾牧项}考點(diǎn)梳理匯編
- 《會(huì)展概述》課件
- 《郴州市總體規(guī)劃》課件
- 【高中物理競(jìng)賽大全】 競(jìng)賽3 電磁學(xué) 50題競(jìng)賽真題強(qiáng)化訓(xùn)練解析版-高考物理備考復(fù)習(xí)重點(diǎn)資料歸納
- 再見2024你好2025展望未來
評(píng)論
0/150
提交評(píng)論