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

下載本文檔

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

文檔簡介

1、xxxxxx大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院課程設(shè)計(jì)報(bào)告20 11 20 12 學(xué)年第 一 學(xué)期課程名稱 數(shù)據(jù)庫課程設(shè)計(jì) 設(shè)計(jì)題目 圖書管理系統(tǒng) 學(xué)生姓名 xxx 學(xué) 號(hào) 專業(yè)班級(jí) 指導(dǎo)教師 2012 年 1 月 9 日目錄1.需求分析21.1背景21.2數(shù)據(jù)需求21.3功能需求3.概念結(jié)構(gòu)設(shè)計(jì)42.1 e-r圖43.邏輯結(jié)構(gòu)設(shè)計(jì)53.1 e-r圖向關(guān)系模式轉(zhuǎn)化53.2數(shù)據(jù)字典64.數(shù)據(jù)庫實(shí)現(xiàn)74.1 表結(jié)構(gòu)截圖74.2表間關(guān)系截圖85.數(shù)據(jù)庫功能模塊圖85.1 數(shù)據(jù)庫功能模塊圖85.2 功能模塊窗口截圖95.3 數(shù)據(jù)庫具體代碼126.課程設(shè)計(jì)心得191.需求分析1.1背景 隨著圖書館規(guī)模的不斷擴(kuò)大,

2、圖書數(shù)量也相應(yīng)的增加,有關(guān)圖書的各種信息量也成倍增加,面對著龐大的信息量,傳統(tǒng)的人工方式管理會(huì)導(dǎo)致圖書館管理上的混亂,人力與物力過多浪費(fèi),圖書館管理費(fèi)用的增加,從而使圖書館的負(fù)擔(dān)過重,影響整個(gè)圖書館的運(yùn)作和控制管理,因此,必須制定一套合理、有效,規(guī)范和實(shí)用的圖書管理系統(tǒng),對圖書資料進(jìn)行集中統(tǒng)一的管理。另一方面,it產(chǎn)業(yè)和internet獲得了飛速發(fā)展,計(jì)算機(jī)應(yīng)用已滲透到了各個(gè)領(lǐng)域,引起信息管理的革命,實(shí)現(xiàn)了信息的自動(dòng)化處理,提高了處理的及時(shí)性和正確性。提高圖書管理工作效率,作到信息的規(guī)范管理,科學(xué)統(tǒng)計(jì)和快速查詢,讓圖書館更好的為學(xué)校,社會(huì)服務(wù)。1.2數(shù)據(jù)需求圖書館管理信息系統(tǒng)需要完成功能主要有

3、:1. 讀者基本信息的輸入,包括借書證編號(hào)、讀者姓名、讀者性別。2讀者基本信息的查詢、修改,包括讀者借書證編號(hào)、讀者姓名、讀者性別等。3書籍類別標(biāo)準(zhǔn)的制定、類別信息的輸入,包括類別編號(hào)、類別名稱。4書籍類別信息的查詢、修改,包括類別編號(hào)、類別名稱。5書籍庫存信息的輸入,包括書籍編號(hào)、書籍名稱、書籍類別、作者姓名、出版社名稱、出版日期、收錄日期。6書籍庫存信息的查詢,修改,包括書籍編號(hào)、書籍名稱、書籍類別、作者姓名、出版社名稱、出版日期、收錄日期等。7借書信息的輸入,包括讀者借書證編號(hào)、書籍編號(hào)、借書日期。8借書信息的查詢、修改,包括借書證編號(hào)、讀者編號(hào)、讀者姓名、書籍編號(hào)、書籍名稱、借書日期等

4、。9還書信息的輸入,包括借書證編號(hào)、書籍編號(hào)、還書日期。 10還書信息的查詢和修改,包括還書讀者借書證編號(hào)、讀者姓名、書籍編號(hào)、書籍名稱、借書日期、還書日期等。11超期還書罰款輸入,還書超出期限包括超出期限還書的讀者借書證號(hào),書籍編號(hào),罰款金額。12超期還書罰款查詢,刪除,包括讀者借書證編號(hào)、讀者姓名、書籍編號(hào)、書籍名稱,罰款金額等1.3功能需求(1)在讀者信息管理部分,要求:a.可以查詢讀者信息。b.可以對讀者信息進(jìn)行添加及刪除的操作。(2 )在書籍信息管理部分,要求:a.可以瀏覽書籍信息,要求:b.可以對書籍信息進(jìn)行維護(hù),包括添加及刪除的操作。(3)在借閱信息管理部分,要求:。a.可以瀏覽

5、借閱信息。b.可以對借閱信息進(jìn)行維護(hù)操作。c.可以瀏覽歸還信息d.對歸還信息可修改維護(hù)操作e.可以瀏覽罰款信息f.對罰款信息可以更新(4)在管理者信息管理部分,要求:a.顯示當(dāng)前數(shù)據(jù)庫中管理者情況。b.對管理者信息維護(hù)操作。.概念結(jié)構(gòu)設(shè)計(jì)2.1 e-r圖根據(jù)1)所要實(shí)現(xiàn)的功能設(shè)計(jì),可能建立它們之間的關(guān)系,進(jìn)而實(shí)現(xiàn)邏輯結(jié)構(gòu)功能。圖書管理信息系統(tǒng)可以劃分的實(shí)體有:用戶信息實(shí)體、書籍信息實(shí)體、書籍借還記錄信息實(shí)體。用e-r圖一一描述這些實(shí)體。2.1.1書籍信息實(shí)體e-r圖:圖2-3書籍信息實(shí)體e-r圖2.1.2.書籍借還記錄信息實(shí)體e-r圖: 圖2-4 書籍借還記錄信息實(shí)體e-r圖2.1.3用戶信息

6、實(shí)體e-r圖:圖2-2 用戶信息實(shí)體e-r圖2.1.4總的信息實(shí)體e-r圖:圖2-7總的信息實(shí)體e-r圖3.邏輯結(jié)構(gòu)設(shè)計(jì)3.1 e-r圖向關(guān)系模式轉(zhuǎn)化(一) 用戶(借書證編號(hào),用戶姓名,用戶性別,用戶種類,注冊時(shí)間)(二) 書籍(書籍編號(hào),書籍名稱,種類編號(hào),書籍作者,出版社,出版時(shí)間,收錄時(shí)間,種類名稱,是否借出)(三) 書籍借還(借書證編號(hào),書籍編號(hào),書籍名稱,借書時(shí)間,還書時(shí)間,借閱期限,超期時(shí)間,罰款金額)以上通過關(guān)系代數(shù)方法的進(jìn)行運(yùn)算得到所需要的結(jié)果,在實(shí)驗(yàn)結(jié)果中可以看到。3.2數(shù)據(jù)字典表.2-1用戶信息表表中列名數(shù)據(jù)類型可否為空用戶借書證號(hào)varcharnot null(主鍵)用戶

7、姓名varcharnot null用戶性別varcharnot null用戶種類varcharnot null登記日期datetimenull表2.2-2 書籍信息表表中列名數(shù)據(jù)類型可否為空書籍編號(hào)varcharnot null(主鍵)書籍名稱varcharnot null種類編號(hào)varcharnot null書籍作者varcharnot null出版社名稱varcharnull出版時(shí)間datetimenull收錄時(shí)間datetimenull是否借出varcharnot null種類名稱varcharnot null表2.2-3 書籍借還記錄信息表表中列名數(shù)據(jù)類型可否為空借書證編號(hào)varcha

8、rnot null(外主鍵)書籍編號(hào)varcharnot null(外主鍵)借書時(shí)間varcharnot null還書時(shí)間datetimenull書籍名稱varcharnot null借閱期限intnot null超期時(shí)間intnot null罰款金額smallmoneynot null4.數(shù)據(jù)庫實(shí)現(xiàn)4.1 表結(jié)構(gòu)截圖表4.1-1用戶信息表表4.1-2 書籍信息表表4.1-3 書籍借還記錄信息表4.2表間關(guān)系截圖表4.2-1 各表之間的關(guān)系5.數(shù)據(jù)庫功能模塊圖5.1 數(shù)據(jù)庫功能模塊圖5.1-1 數(shù)據(jù)庫總體功能模塊圖5.1-2 用戶登錄功能模塊圖5.2 功能模塊窗口截圖5.2-1 圖書信息管理系

9、統(tǒng)登陸首頁5.2-2 用戶登陸頁面5.2-3 用戶注冊頁面5.2-4 用戶信息頁面5.2-5 圖書查詢借閱頁面5.3 數(shù)據(jù)庫具體代碼5.3.1 數(shù)據(jù)庫創(chuàng)建源代碼5.3.1-1 將已有書籍加入書籍信息表insert into 書籍信息表(書籍編號(hào),書籍名稱, 書籍類別,書籍作者,出版社名稱,出版日期, 登記日期,是否借出)values(00125415152,計(jì)算機(jī)組成原理,6,王愛英,清華大學(xué)出版社,2001-01-03,2003-11-15,1)insertinto 書籍信息表(書籍編號(hào),書籍名稱, 書籍類別,書籍作者,出版社名稱,出版日期, 登記日期,是否借出)values(0012541

10、5153,計(jì)算機(jī)組成原理,6,王愛英,清華大學(xué)出版社,2001-01-03,2003-11-15,1)insert into 書籍信息表(書籍編號(hào),書籍名稱, 書籍類別,書籍作者,出版社名稱,出版日期, 登記日期,是否借出)values(00456456,數(shù)據(jù)庫原理,6,薩師煊,高等教育出版社,2007-07-02,2007-09-15,1)insert into 書籍信息表(書籍編號(hào),書籍名稱, 書籍類別,書籍作者,出版社名稱,出版日期, 登記日期,是否借出)values(12215121,c程序設(shè)計(jì),6,譚浩強(qiáng),清華大學(xué)出版社,2002-04-02,2004-03-14,1)insert

11、into 書籍信息表(書籍編號(hào),書籍名稱, 書籍類別,書籍作者,出版社名稱,出版日期, 登記日期,是否借出)values(9787308020558,計(jì)算機(jī)體系結(jié)構(gòu),6,石教英,浙江大學(xué)出版社,2004-10-03,2006-11-15,1)insert into 書籍信息表(書籍編號(hào),書籍名稱, 書籍類別,書籍作者,出版社名稱,出版日期, 登記日期,是否借出)values(45456141414,數(shù)據(jù)結(jié)構(gòu)(c語言版),6,吳偉民,嚴(yán)蔚敏,清華大學(xué)出版社,2002-06-28,2004-01-21,1)insert into 書籍信息表(書籍編號(hào),書籍名稱, 書籍類別,書籍作者,出版社名稱,出

12、版日期, 登記日期,是否借出)values(5455515,中華歷史年,1,吳強(qiáng),北京大學(xué)出版社,2005-04-03,2006-05-15,1)insert into 書籍信息表(書籍編號(hào),書籍名稱, 書籍類別,書籍作者,出版社名稱,出版日期, 登記日期,是否借出)values(015115,古代埃及,3,趙文華,北京大學(xué)出版社,2001-02-02,2002-09-15,1)insert into 書籍信息表(書籍編號(hào),書籍名稱, 書籍類別,書籍作者,出版社名稱,出版日期, 登記日期,是否借出)values(1514514,日本文化,1,吳小鵬,北京大學(xué)出版社,2002-04-02,200

13、4-03-14,1)insert into 書籍信息表(書籍編號(hào),書籍名稱, 書籍類別,書籍作者,出版社名稱,出版日期, 登記日期,是否借出)values(15154656,微觀經(jīng)濟(jì)學(xué),5,李小剛,北京大學(xué)出版社,2000-10-03,2001-11-15,1)insert into 書籍信息表(書籍編號(hào),書籍名稱, 書籍類別,書籍作者,出版社名稱,出版日期, 登記日期,是否借出)values(5658,影視文學(xué),4,蘇慶東,北京大學(xué)出版社,1999-02-28,2000-01-21,1)insert into 書籍信息表(書籍編號(hào),書籍名稱, 書籍類別,書籍作者,出版社名稱,出版日期, 登記

14、日期,是否借出)values(565800020,探索宇宙奧秘,2,蘇慶東,北京大學(xué)出版社,1999-02-28,2000-01-21,1)5.3.1-2 將已有用戶信息插入用戶信息表insert into 用戶信息表(用戶借書證號(hào),用戶姓名,用戶性別,用戶種類,登記日期)values(x05620207,陳遠(yuǎn)鵬,男,學(xué)生,2005-9-23 14:23:56)insert into 用戶信息表(用戶借書證號(hào), 用戶姓名, 用戶性別, 用戶種類,登記日期)values(x05620206,陳特,男,學(xué)生,2005-09-30 13:24:54.623)insert into 用戶信息表(用戶借

15、書證號(hào), 用戶姓名, 用戶性別, 用戶種類,登記日期)values(x05620204,趙銘靜,女,學(xué)生,2005-09-27 11:24:54.123)insert into 用戶信息表(用戶借書證號(hào), 用戶姓名, 用戶性別, 用戶種類,登記日期)values(x05620202,潘虹,女,學(xué)生,2005-09-30 13:24:54.473)insert into 用戶信息表(用戶借書證號(hào), 用戶姓名, 用戶性別, 用戶種類,登記日期)values(008415,蔣偉,男,教師,2004-04-30 09:24:54.478)insert into 用戶信息表(用戶借書證號(hào), 用戶姓名,

16、用戶性別, 用戶種類,登記日期)values(001456,李葉風(fēng),女,教師,2004-04-30 09:24:54.478)insert into 用戶信息表(用戶借書證號(hào), 用戶姓名, 用戶性別,用戶種類,登記日期)values(123456,李四,男,管理員,2004-04-30 09:24:54.478)5.3.1-3 將已有借閱信息加入書籍借還信息表insert into 書籍借還信息表(書籍編號(hào),借書證編號(hào),借書時(shí)間)values(00125415152,x05620202,2011-09-27 11:24:54.123)update 書籍信息表set 是否借出=0where 書籍

17、編號(hào)=00125415152 and 是否借出=1insert into 書籍借還信息表(書籍編號(hào),借書證編號(hào),借書時(shí)間)values(00125415153,x05620206,2011-12-27 08:26:51.452)update 書籍信息表set 是否借出=0where 書籍編號(hào)=00125415153 and 是否借出=1insert into 書籍借還信息表(書籍編號(hào),借書證編號(hào),借書時(shí)間)values(5455515,x05620207,2011-12-27 08:26:51.452)update 書籍信息表set 是否借出=0where 書籍編號(hào)=5455515 and 是

18、否借出=1insert into 書籍借還信息表(書籍編號(hào),借書證編號(hào),借書時(shí)間)values(015115,x05620204,2011-10-21 12:11:51.452)update 書籍信息表set 是否借出=0where 書籍編號(hào)=015115 and 是否借出=1insert into 書籍借還信息表(書籍編號(hào),借書證編號(hào),借書時(shí)間)values(15154656,001456,2011-12-28 14:11:51.312)update 書籍信息表set 是否借出=0where 書籍編號(hào)=15154656 and 是否借出=1insert into 書籍借還信息表(書籍編號(hào),借

19、書證編號(hào),借書時(shí)間)values(565800020,008415,2011-08-28 15:11:31.512)update 書籍信息表set 是否借出=0where 書籍編號(hào)=565800020 and 是否借出=15.3.1-4 初始化書籍信息表中的書籍種類update 書籍信息表 set 種類名稱=人文藝術(shù)類 where 種類編號(hào)=1update 書籍信息表 set 種類名稱=自然科學(xué)類 where 種類編號(hào)=2update 書籍信息表 set 種類名稱=社會(huì)科學(xué)類 where 種類編號(hào)=3update 書籍信息表 set 種類名稱=圖片藝術(shù)類 where 種類編號(hào)=4update

20、書籍信息表 set 種類名稱=政治經(jīng)濟(jì)類 where 種類編號(hào)=5update 書籍信息表 set 種類名稱=工程技術(shù)類 where 種類編號(hào)=6update 書籍信息表 set 種類名稱=語言技能類 where 種類編號(hào)=75.3.2 數(shù)據(jù)庫操作源代碼5.3.2-1 連接數(shù)據(jù)庫代碼sqlconnection con = new sqlconnection(data source=.sqlexpress; attachdbfilename=|datadirectory|librarydbms.mdf; integrated security=true; user instance=true);

21、 con.open();sqlcommand cmd = con.createcommand(); cmd.commandtext = /*此處假如sql語句*/ con.dispose();5.3.2-2 讀者注冊代碼 protected void button1_click(object sender, eventargs e) if (textbox1.text.tostring() = 0 | textbox2.text.tostring() = 0 | textbox3.text.tostring() = 0 | textbox4.text.tostring() = 0 | text

22、box5.text.tostring() = 0 | textbox6.text.tostring() = 0) label1.text = 輸入有空項(xiàng),請重新輸入; return; else if (textbox3.text.compareto(textbox4.text) != 0) label1.text = 兩次輸入的密碼不同; return; using (sqlconnection con = new sqlconnection( data source=.sqlexpress; attachdbfilename=|datadirectory|librarydbms.mdf; i

23、ntegrated security=true; user instance=true) con.open(); using (sqlcommand cmd = con.createcommand() cmd.commandtext = select * from t_readerinfo where t_readerinfo.readerid= + textbox1.text.tostring() + ; /label1.text = cmd.executescalar().tostring(); if (cmd.executescalar() != null)/這里寫null,因?yàn)槿绻祷?/p>

24、值是null時(shí),再用tostring的話 /提示未將對象引用設(shè)置到對象的實(shí)例 label1.text = 用戶名已存在,請輸入你的學(xué)號(hào); con.dispose(); return; else cmd.commandtext = insert into t_readerinfo (readerid,readername,readeraddress,password,readerphonenumber) values( + textbox1.text.tostring() + , + textbox2.text.tostring() + , + textbox5.text.tostring()

25、+ , + textbox3.text.tostring() + , + textbox6.text.tostring() + ); cmd.executenonquery(); con.close(); con.open(); cmd.commandtext = create table newreader + textbox1.text.tostring() + (bookid char(15) not null,bookname nvarchar(50) not null,bookauthor nvarchar(50) not null,borrowtime smalldatetime

26、not null,rebacktime smalldatetime not null,prasentt char(1) not null,havedays int not null,renewtimes int not null); cmd.executenonquery(); string url; url = /login.aspx?id= + textbox1.text.tostring() + &name= + textbox2.text.tostring(); response.redirect(url); con.dispose(); (3) 讀者登陸代碼 using (sqlco

27、mmand cmd = con.createcommand() if (radiobuttonlist1.selectedvalue = 0) cmd.commandtext = select * from t_readerinfo where t_readerinfo.readerid= + textbox1.text.tostring() + and t_readerinfo.password= + textbox2.text + ; else cmd.commandtext = select * from t_messagerinfo where t_messagerinfo.reade

28、rid= + textbox1.text.tostring() + and t_messagerinfo.password= + textbox2.text + ; cmd.executenonquery(); if (cmd.executescalar() = null) label1.text = 賬戶名或密碼錯(cuò)誤; con.dispose(); return; else label1.text = 登陸成功,正在為你跳轉(zhuǎn); using (sqldatareader reader = cmd.executereader() reader.read(); readerid = reader.

29、getstring(reader.getordinal(readerid); readername = reader.getstring(reader.getordinal(readername); con.dispose(); string url; url = /login.aspx?id= + readerid + &name= + readername; response.redirect(url); / response.redirect(login.aspx); (4) 根據(jù)書名或作者或書號(hào)檢索書的代碼,以及gridview空間數(shù)據(jù)的綁定 dataset ds = getdata(

30、querystring); if (ds.tables.count 0) gridview1.datasource = ds; gridview1.databind(); if (gridview1.rows.count = 0) label1.text = oops!,相關(guān)的書不存在; else message.text = unable to connect to the database.; dataset getdata(string querystring) dataset ds = new dataset(); try / connect to the database and r

31、un the query. sqlconnection connection = new sqlconnection(data source=.sqlexpress; attachdbfilename=|datadirectory|librarydbms.mdf; integrated security=true; user instance=true); sqldataadapter adapter = new sqldataadapter(querystring, connection); / fill the dataset. adapter.fill(ds); catch (exception ex) message.text = unable to connect to the database.; return ds;(5) 根據(jù)點(diǎn)擊書號(hào)獲得書號(hào)并完成借閱或預(yù)約或還書的代碼 protected void gridview1_rowcommand(object sender, gridviewcommandeventargs e) string str; switch (e.commandname) case del1: str = 0; break; case del2: str = 1; break;

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論