圖書管理系統(tǒng)數(shù)據(jù)庫課程設(shè)計_第1頁
已閱讀1頁,還剩16頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  摘 要</b></p><p>  系統(tǒng)名為圖書管理系統(tǒng)。根據(jù)開發(fā)要求,它主要應(yīng)用于教育系統(tǒng),完成對圖書信息的管理。開發(fā)圖書管理系統(tǒng)可以讓學(xué)校有效的管理學(xué)校內(nèi)各學(xué)生的信息。同時,也可以減少勞動力的使用、加快查詢速度、加強管理。目前,學(xué)校工作繁雜、資料重多……。鑒于這些情況,學(xué)校很是需要這類的信息管理系統(tǒng)。而對于學(xué)籍管理系統(tǒng)來說,目前還沒有一套很完整的、很統(tǒng)一的

2、系統(tǒng)。因此,應(yīng)該看到社會的真正需要,有意識的進行開發(fā)和研究。開發(fā)一套適和大眾的、兼容性好的系統(tǒng)是很有必要的。 綜上,開發(fā)這樣的一套軟件十分必要。同時舊的人工管理機制必將被以計算機為基礎(chǔ)的信息管理所取代,從而實現(xiàn)對數(shù)據(jù)的高效,長久,安全的管理。 由于多種原因,學(xué)籍管理系統(tǒng)只有一個主要的功能,就是管理學(xué)生的學(xué)籍信息,在其下面,還有增加記錄、刪除記錄、修改記錄、查詢、顯示全部記錄等功能。在開發(fā)過程中,使其符合操作的業(yè)務(wù)流程,并力求系統(tǒng)

3、的全面性、通用性,使得本系統(tǒng)不只適用于一家教育機構(gòu)。在開發(fā)方法的選擇上,選擇了生命周期法與原型法相結(jié)合的方法。而在具體的設(shè)計上,采取了演化式原型法。在開發(fā)工具的選擇上,主要利用Visual C++編程語言和SQL server 200</p><p>  關(guān)鍵詞 圖書管理系統(tǒng),Visual C++編程語言和SQL server 2000關(guān)系型數(shù)據(jù)庫。</p><p><b> 

4、 目 錄</b></p><p><b>  1 緒論1</b></p><p>  1.1 課題簡介1</p><p>  1.2 設(shè)計目的1</p><p>  1.3 設(shè)計內(nèi)容1</p><p><b>  2 需求分析1</b></p

5、><p>  2.1 需求分析的任務(wù)2</p><p>  2.2 數(shù)據(jù)流程圖2</p><p>  2.3 數(shù)據(jù)字典3</p><p>  3 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計4</p><p>  3.1 局部概念模型設(shè)計4</p><p>  3.2 全局概念模型設(shè)計5</p>&

6、lt;p>  4 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計7</p><p>  4.1 E-R圖向關(guān)系模型的轉(zhuǎn)換7</p><p>  4.2 數(shù)據(jù)模型的優(yōu)化7</p><p>  4.3 數(shù)據(jù)庫的結(jié)構(gòu)7</p><p>  5.數(shù)據(jù)庫物理結(jié)構(gòu)設(shè)計9</p><p>  5.1 數(shù)據(jù)庫建庫9</p><

7、;p>  5.2 數(shù)據(jù)表及視圖的建立9</p><p><b>  6.系統(tǒng)實現(xiàn)13</b></p><p><b>  總 結(jié)14</b></p><p><b>  參考文獻15</b></p><p><b>  1 緒 論</b

8、></p><p><b>  課題簡介</b></p><p>  數(shù)據(jù)庫技術(shù)和Internet的飛速發(fā)展,使它們已經(jīng)成為現(xiàn)代信息技術(shù)的重要組成部分,是現(xiàn)在計算機信息系統(tǒng)和計算機應(yīng)用系統(tǒng)的基礎(chǔ)和核心。對于任何一個企業(yè)來說,數(shù)據(jù)是企業(yè)重要的資產(chǎn),如何有效利用這些數(shù)據(jù),對于企業(yè)發(fā)展起著極其重要的作用。隨著我國市場經(jīng)濟的迅速發(fā)展和人們生活水平的不斷提高,圖書館藏書的

9、樹木逐漸增大,這也挑戰(zhàn)了圖書管理方面的技術(shù),以前的人工管理方式已經(jīng)不再適應(yīng)現(xiàn)在的環(huán)境,取而代之的是先進的圖書管理系統(tǒng),通過使用PowerBuilder創(chuàng)建的圖書管理系統(tǒng)可以讓管理人員方便而快捷的進行管理、查詢、借閱、錄入等工作。</p><p><b>  設(shè)計目的</b></p><p>  通過本次課程設(shè)計使自己能夠綜合運用所學(xué)的關(guān)系數(shù)據(jù)庫原理知識解決并能設(shè)計一個

10、實際問題,進一步掌握數(shù)據(jù)庫原理的相關(guān)理論和數(shù)據(jù)庫的設(shè)計實現(xiàn)過程,進一步提高自己的分析問題能力和解決問題的能力以及動手能力。</p><p><b>  1.3設(shè)計內(nèi)容</b></p><p>  圖書館管理系統(tǒng)開發(fā)。系統(tǒng)開發(fā)的總的設(shè)計目標(biāo)是實現(xiàn)圖書管理的系統(tǒng)化、規(guī)范化和自動化,實現(xiàn)對圖書資料的集中統(tǒng)一的管理。本系統(tǒng)主要實現(xiàn)對圖書館信息的管理,主要功能為管理有關(guān)讀者、

11、圖書、借閱、查詢、刪除和管理員的信息等。本系統(tǒng)結(jié)構(gòu)分為讀者類別管理、讀者檔案管理、圖書類型管理、圖書檔案管理以及圖書流程管理,讀者管理可以瀏覽讀者的信息,可以對讀者信息進行維護。圖書管理可以瀏覽圖書的信息,可以對圖書信息進行維護。借閱管理可以顯示當(dāng)前數(shù)據(jù)庫中書籍借閱情況,可以對借閱信息進行維護。本系統(tǒng)主要解決的問題是利用關(guān)鍵字對數(shù)據(jù)庫進行查詢。</p><p><b>  2 需求分析</b>

12、;</p><p>  2.1 需求分析的任務(wù)</p><p>  設(shè)計一個圖書管理系統(tǒng),與之有關(guān)的對象有管理員、讀者、圖書等。</p><p><b>  問題描述:</b></p><p>  學(xué)校圖書館有各種各樣的圖書。</p><p>  每圖書都有書名、圖書編號、作者、出版社等屬性。&l

13、t;/p><p>  借書記錄有借閱者的學(xué)號、姓名、性別、所在院系、借書時間、還書期限等屬性。</p><p>  讀者次最多能借5本書、借書期限為15天。</p><p>  所設(shè)計的圖書館里系統(tǒng)具有以下功能:</p><p>  1.圖書信息的維護(包括錄入,修改和刪除);</p><p>  2.讀者信息的維護(包括

14、錄入,修改和刪除);</p><p>  3.借閱(借,還)信息的維護(包括借,還信息錄入,修改和刪除)。</p><p><b>  2.2 數(shù)據(jù)流程圖</b></p><p>  (1)讀者進入系統(tǒng)的流程圖為:</p><p>  圖2-1 讀者系統(tǒng)流程圖</p><p>  (2) 圖書管理

15、員工作的流程圖為:</p><p>  圖2-2 管理員工作流程圖</p><p><b>  2.3 數(shù)據(jù)字典</b></p><p><b>  (1)讀者</b></p><p>  作為學(xué)生對圖書館里系統(tǒng)的要求有:</p><p>  1.能按各種方式(書名、編號、作

16、者)查詢圖書館的藏書情況。</p><p>  2.能夠方便的借閱圖書、續(xù)借圖書、歸返圖書。</p><p>  3.能夠查詢自己的基本資料、借閱圖書情況。</p><p>  4.能夠熟悉圖書管理系統(tǒng)的使用。</p><p><b> ?。?)圖書管理員</b></p><p>  作為圖書管理

17、員,他們對圖書管理系統(tǒng)的要求有:</p><p>  1.能夠方便的對圖書進行錄入登記,注銷陳舊的圖書。</p><p>  2.能夠方便的對新生進行登記,或注銷已經(jīng)畢業(yè)的學(xué)生信息(基本信息,借閱信息)。</p><p>  3.能夠隨時發(fā)布一些諸如各學(xué)院的學(xué)生借閱圖書超期情況、圖書館內(nèi)藏書情況、借閱情 況等信息以便各學(xué)院能夠隨時獲取本

18、學(xué)院學(xué)生的一些借書信息。</p><p>  3 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計</p><p>  3.1 局部概念結(jié)構(gòu)設(shè)計</p><p> ?。?)讀者信息類別實體E-R圖</p><p>  圖3-1 讀者信息E-R圖</p><p>  (2)圖書信息E-R圖 </p><p>  圖3-2 圖

19、書信息E-R圖</p><p>  (3)圖書借閱E-R圖:</p><p>  圖3-3 圖書借閱E-R圖</p><p>  管理員信息E-R圖:</p><p>  圖3-4 管理員信息E-R圖</p><p>  3.2 全局概念模型設(shè)計</p><p> ?。?)管理員、圖書、讀者之間

20、的聯(lián)系E-R圖:</p><p>  圖3-5 管理員、圖書、讀者之間的聯(lián)系E-R圖</p><p>  (2)實體之間關(guān)系E-R圖:</p><p>  圖3-6 實體之間的聯(lián)系E-R圖</p><p>  4 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計</p><p>  4.1 E-R圖向關(guān)系模型的轉(zhuǎn)換</p><p

21、>  從理論E-R模型到理論關(guān)系模型的整理轉(zhuǎn)換,通過E-R模型到關(guān)系模型的轉(zhuǎn)化,可以得到如下關(guān)系模式:</p><p><b>  借閱關(guān)系</b></p><p>  屬性:借書證號,讀者學(xué)號,圖書編號,借書日期,還書日期。</p><p><b>  主鍵:借書證號。</b></p><p&g

22、t;<b>  管理員-圖書關(guān)系</b></p><p>  屬性:工作號,圖書編號,添加時間,是否在館</p><p><b>  主鍵:工作號</b></p><p><b>  管理員-學(xué)生關(guān)系</b></p><p>  主鍵:工作號,讀者學(xué)號,確認(rèn)借還</p&g

23、t;<p>  主鍵:工作號,讀者學(xué)號</p><p>  4.2 數(shù)據(jù)模型的優(yōu)化</p><p>  4.3 數(shù)據(jù)庫的結(jié)構(gòu)</p><p>  通過上述分析得到如下數(shù)據(jù)表:</p><p><b>  圖書信息表:</b></p><p><b> ?。?)讀者信息表:&

24、lt;/b></p><p> ?。?)管理員信息表:</p><p><b>  (4)借閱表:</b></p><p>  5 數(shù)據(jù)庫物理結(jié)構(gòu)設(shè)計</p><p><b>  5.1 數(shù)據(jù)庫建庫</b></p><p><b>  1.建立數(shù)據(jù)庫</

25、b></p><p> ?。?)管理員數(shù)據(jù)表的建立</p><p>  Create table 管理員信息表</p><p><b>  (</b></p><p>  工作號 varchar(10) primary key not null,</p><p>  姓名 varchar(

26、10) ,</p><p>  性別 varchar(10),</p><p>  電話 varchar(10)</p><p><b>  );</b></p><p>  (2)圖書信息表的建立</p><p>  create table 圖書信息表</p><p>

27、<b>  (</b></p><p>  圖書編號 varchar(20) primary key not null,</p><p>  書名 varchar(50) not null,</p><p>  出版社 varchar(20) not null,</p><p>  作者 varchar(20) not

28、null);</p><p> ?。?)讀者信息表的建立</p><p>  create table 讀者信息表</p><p><b>  (</b></p><p>  讀者學(xué)號 varchar(10) primary key not null,</p><p>  讀者姓名 varchar

29、(10) not null,</p><p>  聯(lián)系電話 varchar(10) not null,</p><p>  讀者性別 varchar(5) not null,</p><p>  所在院系 varchar(10)</p><p><b>  )</b></p><p> ?。?)借

30、閱關(guān)系表建立</p><p>  create table 借閱表</p><p><b>  (</b></p><p>  工作號 varchar(10) primary key not null,</p><p>  讀者學(xué)號 varchar(10) not null,</p><p

31、>  圖書編號 varchar(10) not null,</p><p>  借書日期 datetime not null,</p><p>  還書期限 datatime not null,</p><p>  是否續(xù)接 varchar(10) not null</p><p><b>  )</b&

32、gt;</p><p><b>  建立索引</b></p><p>  (1)為讀者信息表創(chuàng)建索引。</p><p>  create unique index 讀者信息_pk on 讀者信息表 (讀者學(xué)號);</p><p> ?。?)為圖書信息表創(chuàng)建索引</p><p>  create u

33、nique index 圖書信息_pk on 圖書信息表 (圖書編號);</p><p> ?。?)為管理員信息表創(chuàng)建索引</p><p>  create unique index 管理員信息_pk on 管理員信息表 (工作號);</p><p><b>  建立觸發(fā)器</b></p><p> ?。?)當(dāng)修改讀者信

34、息表中的讀者學(xué)號時,觸發(fā)借閱表,修改相應(yīng)的記錄</p><p>  create trigger r_修改</p><p><b>  on 讀者信息表</b></p><p>  for update</p><p>  as declare @old_讀者學(xué)號 varchar(10)</p><p

35、>  declare @new_讀者學(xué)號 varchar(10)</p><p>  set @old_讀者學(xué)號=(select 讀者學(xué)號 from deleted)</p><p>  set @new_讀者學(xué)號=(select 讀者學(xué)號 from inserted)</p><p>  update 借閱表</p><p>  se

36、t 讀者學(xué)號=@new_讀者學(xué)號借閱</p><p>  where 讀者學(xué)號=@old_讀者學(xué)號</p><p>  (2)當(dāng)修改圖書信息表中的圖書編號是,觸發(fā)借閱表,修改相應(yīng)的信息</p><p>  create trigger b_修改</p><p><b>  on 圖書信息表</b></p>

37、<p>  for update </p><p>  as declare @old_圖書編號 varchar(10)</p><p>  declare @new_圖書編號 varchar(10)</p><p>  set @old_圖書編號=(select 圖書編號 from deleted)</p><p>  set @

38、new_圖書編號=(select 圖書編號 from inserted)</p><p>  update 借閱表</p><p>  set 圖書編號=@new_圖書編號</p><p>  where 圖書編號=@old_圖書編號</p><p>  (3)當(dāng)刪除讀者信息表中的某一讀者信息時,觸發(fā)借閱表,刪除相應(yīng)的記錄</p>

39、<p>  create trigger r_刪除</p><p><b>  on 讀者信息表</b></p><p>  for delete</p><p><b>  as </b></p><p><b>  begin</b></p>&

40、lt;p>  delete from 借閱表</p><p>  where 讀者學(xué)號=(select 讀者學(xué)號 from deleted)</p><p><b>  end</b></p><p> ?。?)當(dāng)刪除圖書信息表中的相關(guān)信息時,觸發(fā)借閱表,刪除相關(guān)信息</p><p>  create trigg

41、er b_刪除</p><p><b>  on 圖書信息表</b></p><p>  for delete </p><p><b>  as </b></p><p><b>  begin</b></p><p>  delete from 借閱

42、表</p><p>  where 圖書編號=(select 圖書編號 from deleted)</p><p><b>  end</b></p><p><b>  建立存儲過程</b></p><p> ?。?)建立錄入讀者信息存儲過程</p><p>  creat

43、e procedure proc_錄入讀者信息(@讀者學(xué)號 varchar(10) ,@讀者姓名 varchar(10),@聯(lián)系電話 varchar(10),@讀者性別 varchar(5),@所在院系 varchar(10) ) </p><p>  as insert into 讀者信息表(讀者學(xué)號,讀者姓名,聯(lián)系電話,讀者性別,所在院系)values(@讀者學(xué)號,@讀者姓名,@聯(lián)系電話,@讀者性別,@所在院

44、系 )</p><p> ?。?)建立錄入圖書信息存儲過程</p><p>  create procedure proc_錄入圖書信息(@圖書編號 varchar(10),@書名 varchar(10),@作者 varchar(10),@出版社 varchar(10),@類別 varchar(10))</p><p>  as insert into 圖書信息表(

45、圖書編號,書名,作者,出版社,類別)values(@圖書編號,@書名,@作者,@出版社,@類別)</p><p> ?。?)建立借閱信息存儲過程</p><p>  create procedure proc_借閱信息(@工作號varchar(10),@讀者學(xué)號 varchar(10),@圖書編號varchar(10),@借書日期 datatime,@還書期限 datatime,@是否續(xù)借

46、 varchar(10))</p><p>  as insert into 借閱表(工作號,讀者學(xué)號,圖書編號,借書日期,還書期限,是否續(xù)借)values(@工作號,@讀者學(xué)號,@圖書編號,@借書日期,@還書期限,@是否續(xù)借)</p><p> ?。?)建立管理員信息存儲過程</p><p>  create procedure proc_管理員信息(@工作號va

47、rchar(10),@姓名 varchar(10),@性別varchar(5),電話 varchar(10))</p><p>  as insert into 管理員信息表(工作號, 姓名, 性別,電話)values(@工作號,@姓名,@性別,@電話)</p><p>  (5)建立一個查詢學(xué)生所借閱的圖書數(shù)目的存儲過程,管理管理員只要輸入相應(yīng)學(xué)生的學(xué)號,系統(tǒng)自動顯示其所借閱的圖書數(shù)目&

48、lt;/p><p>  create procedure proc_借書本數(shù) @讀者學(xué)號 varchar(10) </p><p><b>  as</b></p><p>  select 讀者學(xué)號,count(*) as 借書本數(shù)</p><p><b>  from 借閱表</b></p&

49、gt;<p>  where 讀者學(xué)號=@讀者學(xué)號</p><p>  group by 讀者學(xué)號</p><p>  5.2 數(shù)據(jù)表及視圖的建立</p><p><b>  創(chuàng)建查詢視圖:</b></p><p>  create view 查詢_view(讀者學(xué)號,讀者姓名,讀者性別,所在院系,書名,

50、借書日期)</p><p><b>  as</b></p><p>  select 借閱表.讀者學(xué)號,讀者姓名,讀者性別,所在院系,書名,借書日期</p><p>  from 讀者信息表,圖書信息表,借閱表</p><p>  where 讀者信息表.讀者學(xué)號=借閱表.讀者學(xué)號 and 借閱表.圖書編號=圖書信息表

51、.圖書編號</p><p>  6 系統(tǒng)開發(fā)所用到的技術(shù)</p><p>  本系統(tǒng)主要由SQL SEVER 2005開發(fā)的數(shù)據(jù)庫實現(xiàn)。</p><p><b>  總結(jié)</b></p><p>  本系統(tǒng)對于實驗任務(wù)所規(guī)定的要求(各項信息的查詢、刪除、修改)大體都能夠滿足,觸發(fā)器的建立也比較完善,只是一些細(xì)節(jié)以及一些輔

52、助功能還不夠完善,如個角色的權(quán)限分配沒有表明,存儲過程的建立還不夠完善等。</p><p>  由于本系統(tǒng)設(shè)計初遵循的是一條簡單實用的設(shè)計理念,設(shè)計的初衷是首先滿足課程設(shè)計的要求,然后在添加一些錦上添花的程序或功能,但是在課程設(shè)計末尾由于時間緊迫來不及對一些輔助功能進行添加或是完善。因此相比其他同學(xué)的課程設(shè)計,本系統(tǒng)在建表或是存儲過程方面看上去略顯簡單,各項操作也不算復(fù)雜。</p><p>

53、;  通過兩周緊張的課程設(shè)計,我對數(shù)據(jù)庫這門學(xué)科有了全新的認(rèn)識,在以前數(shù)據(jù)庫的學(xué)習(xí)當(dāng)中只是注重一些考點進行學(xué)習(xí)或是記憶,忽略了對實際運用方面知識的加強和學(xué)習(xí)。因此雖然在前段時間的數(shù)據(jù)庫期末測試中自我感覺良好,但是到了課程設(shè)計周之后才發(fā)現(xiàn)自己前面所學(xué)的理論知識根本不能滿足課程設(shè)計的要求。這個現(xiàn)象提醒我在以后專業(yè)課程學(xué)習(xí)的時候千萬要注意倫理與實際相結(jié)合,不能為了應(yīng)付期末考試忽略實際應(yīng)用而將全部精力放在理論知識的學(xué)習(xí)上。</p>

54、<p>  在本次課程設(shè)計中我最大的收獲就是加深了對存儲過程、觸發(fā)器、視圖等數(shù)據(jù)庫核心知識相關(guān)操作的了解,在以前的學(xué)習(xí)中由于期末考試不會考的太難于是對于這方面的知識只是草草帶過沒有全面深入的進行學(xué)習(xí)。</p><p><b>  參考文獻</b></p><p>  [1] 陳漫紅編《數(shù)據(jù)庫系統(tǒng)原理與應(yīng)用技術(shù)》機械工業(yè)出版社2010.3 </p&g

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論