基于oracle的圖書(shū)管理系統(tǒng)數(shù)據(jù)庫(kù)分析與設(shè)計(jì)_第1頁(yè)
基于oracle的圖書(shū)管理系統(tǒng)數(shù)據(jù)庫(kù)分析與設(shè)計(jì)_第2頁(yè)
基于oracle的圖書(shū)管理系統(tǒng)數(shù)據(jù)庫(kù)分析與設(shè)計(jì)_第3頁(yè)
基于oracle的圖書(shū)管理系統(tǒng)數(shù)據(jù)庫(kù)分析與設(shè)計(jì)_第4頁(yè)
基于oracle的圖書(shū)管理系統(tǒng)數(shù)據(jù)庫(kù)分析與設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、圖書(shū)管理系統(tǒng)數(shù)據(jù)庫(kù)分析與設(shè)計(jì)課程:大型數(shù)據(jù)庫(kù)Oracle目 錄一、需求分析11.1背景11.2功能分析圖11.3數(shù)據(jù)流程圖2二、概念結(jié)構(gòu)設(shè)計(jì)32.1分E-R圖32.2總E-R圖4三、邏輯結(jié)構(gòu)設(shè)計(jì)5四、物理結(jié)構(gòu)設(shè)計(jì)64.1管理員信息表64.2讀者信息表74.3圖書(shū)信息表84.4圖書(shū)借閱登記表84.5圖書(shū)歸還登記表9五、 數(shù)據(jù)庫(kù)實(shí)施代碼95.1創(chuàng)建數(shù)據(jù)庫(kù)并創(chuàng)建數(shù)據(jù)表95.2數(shù)據(jù)的存儲(chǔ)與修改115.2.1管理員操作115.2.2讀者信息125.2.3 圖書(shū)信息125.2.4借書(shū)與還書(shū)135.3查詢舉例145.3.1單表查詢145.3.2.連接查詢145.3.3.嵌套查詢14六、數(shù)據(jù)優(yōu)化146.1創(chuàng)建

2、視圖146.2創(chuàng)建索引156.3創(chuàng)建觸發(fā)器15收獲與體會(huì)171一、需求分析1.1背景圖書(shū)館在正常運(yùn)營(yíng)中面對(duì)大量書(shū)籍、讀者信息以及兩者間相互聯(lián)系產(chǎn)生的借書(shū)信息、還書(shū)信息?,F(xiàn)有的人工記錄方法既效率低又錯(cuò)誤過(guò)多,大大影響了圖書(shū)館的正常管理工作。因此需要對(duì)書(shū)籍資源、讀者資源、借書(shū)信息、還書(shū)信息進(jìn)行管理,及時(shí)了解各個(gè)環(huán)節(jié)中信息的變更,有利于管理效率的提高。1.2功能分析圖1.3數(shù)據(jù)流程圖二、概念結(jié)構(gòu)設(shè)計(jì)2.1分E-R圖(管理員E-R圖)(學(xué)生E-R圖)(圖書(shū)E-R圖)2.2總E-R圖 (總E-R圖)設(shè)計(jì)說(shuō)明:上圖是該圖書(shū)管理系統(tǒng)總E-R圖,該系統(tǒng)涉及的實(shí)體集有:學(xué)生實(shí)體集:具有屬性用戶名、密碼、學(xué)號(hào),姓

3、名,性別,院系、班級(jí)、電話圖書(shū)實(shí)體集:具有屬性圖書(shū)ISBN編號(hào)、圖書(shū)書(shū)名、作者、出版社、定價(jià)、圖書(shū)類別、庫(kù)存管理員實(shí)體集:具有屬性用戶名、密碼、姓名、加入時(shí)間一個(gè)學(xué)生可以借閱和歸還多本圖書(shū),所以學(xué)生和圖書(shū)之間的聯(lián)系為1:n的聯(lián)系。一個(gè)管理員可以對(duì)多本圖書(shū)進(jìn)行管理,圖書(shū)管理員可以有多個(gè),所以管理員和圖書(shū)之間的聯(lián)系為m:n的聯(lián)系。一個(gè)管理員可以對(duì)多個(gè)讀者進(jìn)行管理,圖書(shū)管理員可以有多個(gè),所以管理員和學(xué)生之間的聯(lián)系為m:n的聯(lián)系。三、邏輯結(jié)構(gòu)設(shè)計(jì) 將概念模型轉(zhuǎn)換成關(guān)系模式(1) 圖書(shū)實(shí)體集可以轉(zhuǎn)換為關(guān)系:tBook(cBooksISBN,cBooksName,cBooksAuthor,cBooksTy

4、pe,cBooksPrice,cBooksPublisher ,cBooksStore)cBooksISBN表示圖書(shū)編號(hào),cBooksName表示圖書(shū)名稱, cBooksAuthor表示圖書(shū)作者,cBooksType表示圖書(shū)類型,cBooksPrice表示圖書(shū)價(jià)格,cBooksPublisher表示圖書(shū)出版社,cBooksStore表示圖書(shū)庫(kù)存量(2) 讀者實(shí)體集可以轉(zhuǎn)換為關(guān)系:tUser(cUsersID,cUsersPwd,cUsersNo, cUsersName,cUsersSex,cUsersDepart,cUsersClass,cUsersTel)cUsersID表示讀者用戶名,cU

5、sersPwd 表示用戶密碼,cUsersNo 表示讀者學(xué)號(hào),cUsersName表示讀者姓名,cUsersSex表示讀者性別,cUsersDepart表示讀者院系,cUsersClass表示讀者班級(jí),cUsersTel表示讀者電話(3) 管理員實(shí)體集可以轉(zhuǎn)換為關(guān)系:t Admin(cAdminID,c AdminPwd ,c AdminName, c Admin AddTime)cAdminID表示管理員用戶名,c AdminPwd表示密碼,c AdminName表示管理員姓名c Admin AddTime表示管理員加入時(shí)間。(4) 因?yàn)閷W(xué)生和圖書(shū)之間的聯(lián)系為1:n的聯(lián)系,所以:tUser(

6、cUsersID,cBooksISBN)cBooksISBN表示學(xué)生借閱的圖書(shū)。(5) 因?yàn)楣芾韱T和圖書(shū)之間的聯(lián)系為m:n的聯(lián)系,所以:t Admin(c Admin ID,cBooksISBN)cBooksISBN表示管理員管理的圖書(shū)。(6) 因?yàn)楣芾韱T和學(xué)生之間的聯(lián)系為m:n的聯(lián)系,所以:t Admin(c Admin ID,cUsersID)cUsersID表示管理員管理的學(xué)生。四、物理結(jié)構(gòu)設(shè)計(jì)依據(jù)關(guān)系模式,并結(jié)合以上E-R圖,經(jīng)過(guò)轉(zhuǎn)化,即可進(jìn)行數(shù)據(jù)庫(kù)的物理設(shè)計(jì)。該系統(tǒng)的數(shù)據(jù)庫(kù)采用Oracle,基于以上數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì),本系統(tǒng)決定采用一個(gè)數(shù)據(jù)庫(kù),在其下創(chuàng)建5個(gè)數(shù)據(jù)表,其結(jié)構(gòu)分別如下:4.

7、1管理員信息表 表4-1管理員信息表(tAdmin)的結(jié)構(gòu)序號(hào)字段名稱字段說(shuō)明類型位數(shù)屬性備注1cAdminID用戶名文本6必須非空2c AdminPwd密碼文本6必須非空3c AdminName姓名文本10必須非空4c AdminSex性別文本2可為空5cAdminAddTime加入時(shí)間文本10可為空4.2讀者信息表 表4-2讀者信息表(tUser)的結(jié)構(gòu)序號(hào)字段名稱字段說(shuō)明類型位數(shù)屬性備注1cUsersID用戶名文本10必須非空2cUsersPwd密碼文本6必須非空3cUsersNo讀者學(xué)號(hào)文本11必須非空4cUsersName讀者姓名文本10必須非空5cUsersSex讀者性別文本2可為

8、空6cUsersDepart讀者系別文本20可為空7cUsersClass讀者班級(jí)文本6可為空8cUsersTel讀者電話文本11可為空4.3圖書(shū)信息表表4-3圖書(shū)信息表(tBook)的結(jié)構(gòu)序號(hào)字段名稱字段說(shuō)明類型位數(shù)屬性備注1cBooksISBN圖書(shū)編號(hào)文本13必須非空2cBooksName圖書(shū)名稱文本20必須非空3cBooksAuthor圖書(shū)作者文本10可為空4cBooksType圖書(shū)類型文本10可為空5cBooksPrice圖書(shū)價(jià)格貨幣6可為空6cBooksPublisher圖書(shū)出版社文本20可為空7cBooksStore圖書(shū)庫(kù)存量整數(shù)3可為空4.4圖書(shū)借閱登記表表4-4圖書(shū)借閱登記表(

9、tBorrow)的結(jié)構(gòu)序號(hào)字段名稱字段說(shuō)明類型位數(shù)屬性備注1cUsersNo讀者學(xué)號(hào)文本6必須非空2cUserName讀者姓名文本10必須非空3cBooksISBN圖書(shū)編號(hào)文本13必須非空4cBooksName圖書(shū)名字文本20必須非空5cUsersBorrow已借數(shù)目文本2必須非空4.5圖書(shū)歸還登記表表4-5圖書(shū)歸還登記表(tReturn)的結(jié)構(gòu)序號(hào)字段名稱字段說(shuō)明類型位數(shù)屬性備注1cUsersNo讀者學(xué)號(hào)文本6必須非空2cUserName讀者姓名文本10必須非空3cBooksISBN圖書(shū)編號(hào)文本13必須非空4cBooksName圖書(shū)名字文本20必須非空5cBorrwTime借書(shū)時(shí)間時(shí)間日期1

10、0必須非空6cReturnTime還書(shū)時(shí)間時(shí)間日期10必須非空五、 數(shù)據(jù)庫(kù)實(shí)施代碼5.1創(chuàng)建數(shù)據(jù)庫(kù)并創(chuàng)建數(shù)據(jù)表建管理員表create table tAdmin(cAdminID char(6) primary key,cAdminPwd char(6) not null,cAdminName char(10) not nullcAsminSex char(2),cAdminAddTime char(10);建讀者表create table tUser (cUsersID char(10)primary key,cUsersPwd char(6)not null,cUsersNo char(11

11、)not null,cUsersName char(10) not null,cUsersSex char(2),cUsersDepart char(20),cUsersClass char(6),cUsersTel char(11);建圖書(shū)表create table book tBook(cBooksISBN char(13)primary key,cBooksName char(20)not null,cBooksAuthor char(10),cBooksType char(10)not null,cBooksPrice int,cBooksPublisher char(20), cBo

12、oksStore int); 建借書(shū)表create table tBorrow(cUsersNo char(6)not null,cUserName char(10) not null,cBooksISBN char(13) not null,cBookName char(20) not null ,cUsersBorrow int,)primary key( cUsersNo,cBooksISBN)建還書(shū)表create table tReturn(cUsersNo char(6)not null,cUserName char(10) not null,cBooksISBN char(13)

13、not null,cBookName char(20) not null,cBorrowTime char(10) not nullcReturnTime char(10) not null,)primary key( cUsersNo,cBooksISBN)5.2數(shù)據(jù)的存儲(chǔ)與修改5.2.1管理員操作管理員注冊(cè)insert into tAdmin values(070411,123456,李志敏, 男,2011-6-27);insert into tAdmin values(070448,123456,趙林寧, 女,2011-6-27);管理員注銷delete from tAdmin wher

14、e cAdminID =070411;5.2.2讀者信息增加讀者insert into tUser(cUsersID,cUsersPwd,cUsersNo,cUsersName, cUsersSex, cUsersDepart,cUsersClass,cUsersTel)values(070421,123456,20084070421,鄭春龍,男,計(jì)科系,080704;insert into tUser(cUsersID,cUsersPwd,cUsersNo,cUsersName, cUsersSex, cUsersDepart,cUsersClass,cUsersT

15、el)values(070433,123456,20084070433,晉亞麗,女,計(jì)科系,080704;刪除讀者delete from tUser where cUsersID =20084070421;修改讀者信息update tUser set cUsersName=張三, cUsersSex=男 where cUsersID =200840704335.2.3 圖書(shū)信息增加圖書(shū)insert into book(cBooksISBN, cBooksName, cBooksAuthor, cBooksType, cBooksPrice, cBooksPublish

16、er, cBooksStore)values (9787802062373,圍城,三毛,小說(shuō),29.80,人民日?qǐng)?bào)出版社,3);insert into book(cBooksISBN, cBooksName, cBooksAuthor, cBooksType, cBooksPrice, cBooksPublisher, cBooksStore)values (3625654585625,Java程序設(shè)計(jì),張墨華,計(jì)算機(jī),56.50,清華大學(xué)出版社,7);刪除圖書(shū)delete from tBook where cBooksISBN=9787802062373;修改圖書(shū)信息update tBook

17、 set cBooksName =霧,bauthor=巴金 where cBooksISBN =9787802062373; 5.2.4借書(shū)與還書(shū)讀者借閱圖書(shū)insert into tBorrow (cUsersNo,cUserName,cBooksISBN,cBooksName, cUsersBorrow);values(070411,李志敏,5625658565452,圍城,2011-6-27)讀者歸還圖書(shū)insert into tReturn(cUsersNo,cUserName,cBooksISBN,cBooksName, cBorrwTime, cReturnTime);values

18、(070411,李志敏,5625658565452,圍城,2011-6-272011-7-20);5.3查詢舉例5.3.1單表查詢查詢姓李的學(xué)生信息select * from tUser where tUsersName like李%;查詢借書(shū)同學(xué)的信息select cUsersName from tBorrow ORDER BY cUsersID;5.3.2.連接查詢查詢所有借書(shū)同學(xué)的姓名、手機(jī)號(hào)及所在的院系select tBorrow.cUsersName,cUsersTel,cUsersDepart from tUser,tBorrow where tUser.cUsersName =t

19、Borrow.cUsersName;5.3.3.嵌套查詢查詢借某本書(shū)的同學(xué)的學(xué)號(hào)、姓名、及聯(lián)系方式Select cUsersID,cUsersName,cUsersTel from tUser where cUsersID in(select cUsersID from tBorrow where cBooksISBN=5623562514865)六、數(shù)據(jù)優(yōu)化數(shù)據(jù)庫(kù)的優(yōu)化主要是指創(chuàng)建視圖,索引,以及觸發(fā)器。以提高查詢效率以及擴(kuò)展該管理系統(tǒng)的功能,使管理員能夠更加方便、人性化的對(duì)圖書(shū)進(jìn)行管理。6.1創(chuàng)建視圖如創(chuàng)建視圖view圖書(shū)信息視圖create view i_bookasselect*fro

20、m tBookwhere cBooksType like 計(jì)算機(jī)讀者信息視圖view_count,包含每個(gè)讀者的姓名、學(xué)號(hào)和借書(shū)數(shù)目的信息create view view_count(cUsersName, cUsersNo, cUsersBorrow,)asselect cUsersNo count(*) from. tBorrow group by cUsersName6.2創(chuàng)建索引如在tBook上創(chuàng)建唯一性索引Create unique index tBook_ cBooksType on tBook(cBooksType)在tUser表上的cUserSex列上創(chuàng)建一個(gè)位圖索引Creat

21、e bitmap index tUser_sex on tUser(cUserSex)6.3創(chuàng)建觸發(fā)器如創(chuàng)建一個(gè)觸發(fā)器,禁止在周日對(duì)圖書(shū)表進(jìn)行修改Create or replace trigger trg_emp_SundayBegin If to_char(sysdate, DY , nls_date_language=american) In (SUN)Then raise_application_error(-20200, Cant operate on Sunday.);End If;End trigger_trg_emp_Sunday;17收獲與體會(huì)本圖書(shū)管理系統(tǒng)的數(shù)據(jù)庫(kù)分析與設(shè)計(jì)是

22、由我們小組分工合作利用一周的課余時(shí)間完成的,通過(guò)這,在這個(gè)過(guò)程中,我們掌握了系統(tǒng)開(kāi)發(fā)的數(shù)據(jù)庫(kù)設(shè)計(jì)的各個(gè)步驟以及文檔的書(shū)寫(xiě),例如ER圖的繪制,物理結(jié)構(gòu)設(shè)計(jì)等,并且結(jié)合實(shí)例提高了數(shù)據(jù)庫(kù)代碼的編寫(xiě)能力。最重要的是我們學(xué)會(huì)了如何分工合作。我們的數(shù)據(jù)庫(kù)設(shè)計(jì)基本實(shí)現(xiàn)了圖書(shū)管理系統(tǒng)的學(xué)生信息管理、圖書(shū)信息管理、借書(shū)、還書(shū)等功能,但是對(duì)于大型的圖書(shū)管可能還有些欠缺,我們會(huì)進(jìn)一步增加其功能以及適用性。另外本組考慮能否添加一個(gè)短信提醒功能,即將該系統(tǒng)與讀者手機(jī)號(hào)綁定,當(dāng)讀者所借圖書(shū)快到還書(shū)日期的時(shí)會(huì)收到該系統(tǒng)的短信提醒,以免讀者因種種原因忘記還書(shū)而帶來(lái)不必要的經(jīng)濟(jì)損失,當(dāng)然此功能可能需要更多投資,希望在未來(lái)的開(kāi)發(fā)中能夠?qū)崿F(xiàn)。袁節(jié)膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈羃膇芆蕆蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃蠆羆艿薃袁節(jié)膅薂羄肅蒃薁蚃芀荿薀螆肅芅蕿袈羋膁蚈羀肁蒀蚇蝕襖莆蚇螂肀莂蚆羅袂羋蚅蚄膈膄蚄螇羈蒂蚃衿膆莈螞羈罿芄螁蟻膄膀螁螃羇葿螀裊膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃螞肂莈蒂螄羋芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羈莀蒈

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論