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

下載本文檔

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

文檔簡介

1、<p><b>  《數(shù)據(jù)庫課程設(shè)計》</b></p><p>  題目:圖書借閱管理系統(tǒng)的設(shè)計與實現(xiàn)</p><p>  院、 系: 計算機信息與技術(shù)系 </p><p>  學(xué)科專業(yè): 信息管理與信息系統(tǒng) </p><p>  學(xué) 號: XXXX </p>

2、<p>  學(xué)生姓名: XXXX </p><p>  指導(dǎo)教師 : XXXX </p><p>  ×××2012年06月</p><p><b>  第一章 需求分析</b></p><p>  用戶的需求具體體現(xiàn)在各種信息

3、的提供、保存、更新、查詢和借還,這就要求數(shù)據(jù)庫結(jié)構(gòu)能充分滿足各種信息的輸入和輸出。收集基本數(shù)據(jù),數(shù)據(jù)結(jié)構(gòu)以及數(shù)據(jù)處理的流程,為后面的具體設(shè)計打下基礎(chǔ)。</p><p>  在仔細(xì)分析調(diào)查有關(guān)圖書館管理信息需求的基礎(chǔ)上,我們主要考慮以下幾個方面的需求:</p><p>  ● 用戶需求:圖書用戶要求計算機系統(tǒng)和SQL Server所工作的范圍;</p><p>  ●

4、 應(yīng)用資源:數(shù)據(jù)庫應(yīng)用的平臺包括物理平臺和圖書等;</p><p>  1項目名稱: 圖書借閱管理系統(tǒng)</p><p>  2項目背景和內(nèi)容概要</p><p>  對圖書館管理信息系統(tǒng)進(jìn)行詳細(xì)地分析后,我們將系統(tǒng)分為以下幾個模塊:借閱管理模塊、、圖書信息管理模塊、系統(tǒng)管理模塊。其主要功能如下:</p><p>  借閱管理模塊主要功能如下:

5、</p><p>  1) 可以查詢圖書信息、借出圖書信息,借閱圖書。</p><p>  圖書信息管理模塊主要功能如下:</p><p>  1) 定制書籍的各種信息管理,如:書名、作者、出版信息等。</p><p>  2) 書籍信息的修改,新圖書的入庫管理和圖書的注銷等。</p><p>  系統(tǒng)管理模塊主要功能

6、如下:</p><p><b>  1) 用戶登錄。</b></p><p><b>  2)添加用戶。</b></p><p><b>  第二章概要設(shè)計</b></p><p>  1系描述(E-R圖)</p><p><b>  2實體說

7、明</b></p><p><b>  3數(shù)據(jù)項定義</b></p><p>  1).圖書庫的數(shù)據(jù)項定義:</p><p>  表2.1 圖書庫數(shù)據(jù)項定義</p><p>  2).借、還書庫的數(shù)據(jù)項定義:</p><p>  表2.2 借、還書庫數(shù)據(jù)項定義</p>&

8、lt;p>  3).讀者庫的數(shù)據(jù)項定義:</p><p>  表2.3 讀者庫數(shù)據(jù)項定義</p><p><b>  4數(shù)據(jù)表(庫)描述</b></p><p>  圖書數(shù)據(jù)庫=圖書書名+圖書編號+作者+出版社+單價+書號</p><p>  借書庫=圖書名稱+借書日期+還書日期</p><p&

9、gt;  用戶庫=用戶名+密碼</p><p><b>  5 系統(tǒng)功能模塊圖</b></p><p><b>  軟件功能結(jié)構(gòu)圖:</b></p><p>  圖2.1 軟件功能結(jié)構(gòu)</p><p><b>  6 系統(tǒng)流程圖:</b></p><p>

10、;  圖2.2 系統(tǒng)流程圖</p><p><b>  第三章 詳細(xì)設(shè)計</b></p><p>  為了能夠用計算機和SQL Server實現(xiàn)用戶需求,可將概念結(jié)構(gòu)轉(zhuǎn)化為相應(yīng)的數(shù)據(jù)模型,即是設(shè)計邏輯結(jié)構(gòu)。即由E-R圖建立了適當(dāng)?shù)谋?,并按不同的范式的定義,對表進(jìn)行規(guī)范化。對規(guī)范化的表,更據(jù)用戶需求建立數(shù)據(jù)庫結(jié)構(gòu)。</p><p><b&g

11、t;  1 確定數(shù)據(jù)依賴</b></p><p><b>  第四章軟件實現(xiàn)</b></p><p>  string strcon = "Data Source=.;Initial Catalog=tushuguanlidb;Integrated Security=True";</p><p>  SqlCon

12、nection sqlCon=new SqlConnection (strcon );</p><p>  sqlCon.Open();</p><p>  string sql = "select * from login where loginname=@loginname and loginpassword=@password";</p><

13、p>  SqlCommand cmd = new SqlCommand(sql,sqlCon );</p><p>  cmd.Parameters.Add ("@loginname",SqlDbType.NChar, 20);</p><p>  cmd.Parameters.Add("@password", SqlDbType.NChar,

14、 20);</p><p>  cmd.Parameters["@loginname"].Value = username.Text;</p><p>  cmd.Parameters["@password"].Value = password.Text;</p><p>  //創(chuàng)建 SqlDataReader,必須調(diào)用 S

15、qlCommand 對象的 ExecuteReader 方法,而不要直接使用構(gòu)造函數(shù)。</p><p>  SqlDataReader dr = cmd.ExecuteReader();</p><p>  if (dr.Read())</p><p><b>  {</b></p><p>  dr.Close();&

16、lt;/p><p>  Formmain formmain = new Formmain();</p><p>  formmain.Show();</p><p>  this.Hide();</p><p><b>  }</b></p><p><b>  else</b>

17、</p><p><b>  {</b></p><p>  MessageBox.Show("密碼錯誤,請重新輸入!");</p><p>  //name.Clear();</p><p>  password.Clear();</p><p><b>  }&l

18、t;/b></p><p>  sqlCon.Close ();</p><p>  amespace </p><p>  amespace bookmis</p><p><b>  {</b></p><p>  public partial class Addbook : Form

19、</p><p><b>  {</b></p><p>  public Addbook()</p><p><b>  {</b></p><p>  InitializeComponent();</p><p><b>  }</b></p&

20、gt;<p>  private void label2_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p><b>  }</b></p><p>  private void label5_Click(object sender, E

21、ventArgs e)</p><p><b>  {</b></p><p><b>  }</b></p><p>  private void textBox4_TextChanged(object sender, EventArgs e)</p><p><b>  {</b

22、></p><p><b>  }</b></p><p>  private void label4_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p><b>  }</b></p>

23、<p>  private void textBox3_TextChanged(object sender, EventArgs e)</p><p><b>  {</b></p><p><b>  }</b></p><p>  private void label3_Click(object sende

24、r, EventArgs e)</p><p><b>  {</b></p><p><b>  }</b></p><p>  private void textBox2_TextChanged(object sender, EventArgs e)</p><p><b>  {&l

25、t;/b></p><p><b>  }</b></p><p>  private void textBox5_TextChanged(object sender, EventArgs e)</p><p><b>  {</b></p><p><b>  }</b>

26、;</p><p>  private void textBox1_TextChanged(object sender, EventArgs e)</p><p><b>  {</b></p><p><b>  }</b></p><p>  private void label1_Click(

27、object sender, EventArgs e)</p><p><b>  {</b></p><p><b>  }</b></p><p>  private void btadd_Click(object sender, EventArgs e)</p><p><b>  

28、{</b></p><p>  SqlConnection sqlcon = new SqlConnection("data source=.;Initial catalog=tushuguanlidb;Integrated security=sspi;");</p><p>  string str = "insert into dbo.book

29、 values(@bookno,@bookname,@bookauthor,@bookpublisher,@benshu)";</p><p>  sqlcon.Open();</p><p>  // SqlCommand cmd = new SqlCommand("insert into dbo.book(bnum,bname,bauthor,bpublic,ben

30、shu) values('" + bookno.Text + "','" + bookname.Text + "','" + bookauthor.Text + "','" + bookpublisher.Text + "','" + booknum.Text + "

31、;')", sqlcon);</p><p>  SqlCommand cmd=new SqlCommand (str,sqlcon );</p><p>  cmd.Parameters.Add ("@bookno",SqlDbType.NChar,20);</p><p>  cmd.Parameters.Add (&qu

32、ot;@bookname",SqlDbType.NChar,20);</p><p>  cmd.Parameters.Add ("@bookauthor",SqlDbType.NChar,20);</p><p>  cmd.Parameters.Add ("@bookpublisher",SqlDbType.NChar,20);<

33、/p><p>  cmd.Parameters.Add ("@benshu",SqlDbType.TinyInt);</p><p>  cmd.Parameters["@bookno"].Value = bookno.Text;</p><p>  cmd.Parameters["@bookname"].Va

34、lue = bookname.Text;</p><p>  cmd.Parameters["@bookauthor"].Value = bookauthor.Text;</p><p>  cmd.Parameters["@bookpublisher"].Value = bookpublisher.Text;</p><p>

35、;  cmd.Parameters["@benshu"].Value = booknum.Text;</p><p>  cmd.ExecuteNonQuery();</p><p>  sqlcon.Close();</p><p>  MessageBox.Show("添加成功!");</p><p&g

36、t;  this.bookno.Clear();</p><p>  this.bookname.Clear();</p><p>  this.bookauthor.Clear();</p><p>  this.bookpublisher.Clear();</p><p>  this.booknum.Clear();</p>

37、<p><b>  }</b></p><p>  private void btcancel_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  this.Close();</p><p><b>

38、  }</b></p><p>  private void Addbook_Load(object sender, EventArgs e)</p><p><b>  {</b></p><p>  namespace bookmis</p><p><b>  {</b></

39、p><p>  public partial class Delectbook : Form</p><p><b>  {</b></p><p>  public Delectbook()</p><p><b>  {</b></p><p>  InitializeCom

40、ponent();</p><p><b>  }</b></p><p>  private void btok_Click(object sender, EventArgs e)</p><p><b>  {</b></p><p>  string strcon = "Data S

41、ource=.;Initial Catalog=tushuguanlidb;Integrated Security=True";</p><p>  SqlConnection sqlCon = new SqlConnection(strcon);</p><p>  sqlCon.Open();</p><p>  string sql = "

42、select * from book where bookname=@bookname ";</p><p>  SqlCommand cmd = new SqlCommand(sql, sqlCon);</p><p>  cmd.Parameters.Add("@bookname", SqlDbType.NChar, 20);</p><

43、;p>  cmd.Parameters["@bookname"].Value = tbook.Text;</p><p>  //創(chuàng)建 SqlDataReader,必須調(diào)用 SqlCommand 對象的 ExecuteReader 方法,而不要直接使用構(gòu)造函數(shù)。</p><p>  SqlDataReader dr = cmd.ExecuteReader();&l

44、t;/p><p>  if (dr.Read())</p><p><b>  {</b></p><p>  this.tno.Text = dr["bookno"].ToString().Trim();</p><p>  this.tname.Text = dr["bookname&quo

45、t;].ToString().Trim();</p><p>  this.tauthor.Text = dr["bookauthor"].ToString().Trim();</p><p>  this.tpublisher.Text = dr["bookpublisher"].ToString().Trim();</p><

46、p>  this.tbenshu.Text = dr["benshu"].ToString().Trim();</p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>

47、;  MessageBox.Show("暫無此書!");</p><p><b>  }</b></p><p>  sqlCon.Close();</p><p><b>  }</b></p><p>  private void btdelect_Click(object

48、sender, EventArgs e)</p><p><b>  { </b></p><p>  SqlConnection sqlcon = new SqlConnection("data source=.;Initial catalog=tushuguanlidb;Integrated security=sspi;");</p&

49、gt;<p>  sqlcon.Open();</p><p>  string str = "delete from book where bookname=@bookname"; </p><p>  SqlCommand cmd = new SqlCommand(str, sqlcon);</p><p>  cmd.Para

50、meters.Add("@bookname", SqlDbType.NChar, 20);</p><p>  cmd.Parameters["@bookname"].Value = this.tname.Text;</p><p>  cmd.ExecuteNonQuery();</p><p>  sqlcon.Close

51、();</p><p>  MessageBox.Show("刪除成功!");</p><p><b>  }</b></p><p>  private void btcancel_Click(object sender, EventArgs e)</p><p><b>  {</

52、b></p><p>  this.Close();</p><p><b>  } </b></p><p><b>  第五章軟件測試</b></p><p><b>  1系統(tǒng)測試原則</b></p><p>  輸入數(shù)據(jù)進(jìn)行測試,在測試中主

53、要是:</p><p> ?。?)測試頁面中各種項目的輸入長度,輸入數(shù)據(jù)的格式合法性。</p><p> ?。?)可能出錯的一些邊界值。</p><p> ?。?)一些不符合系統(tǒng)要求的數(shù)據(jù)</p><p>  (4)數(shù)據(jù)完整性測試,說要體現(xiàn)在刪除一條數(shù)據(jù)后,與之相關(guān)的數(shù)據(jù)是否也刪除。</p><p>  測試證明系統(tǒng)運

54、行正常,無錯誤發(fā)生。</p><p><b>  2 圖書模塊測試</b></p><p>  圖書模塊測試包括圖書信息的增加,圖書信息的查詢,圖書信息的修改,圖書信息的刪除。</p><p>  對圖書模塊測試的結(jié)果,如表5.1所示。</p><p>  表5.1 圖書模塊測試表</p><p>

55、;<b>  3閱模塊測試</b></p><p>  借閱模塊測試包括圖書的借閱,圖書的續(xù)借,圖書的歸還,催還圖書。</p><p>  對借閱模塊的測試結(jié)果,如表5.3所示。</p><p>  表5.3 借閱模塊測試表</p><p><b>  第六章課程設(shè)計總結(jié)</b></p>

56、<p>  通過這次課程設(shè)計,了解了設(shè)計一個數(shù)據(jù)庫系統(tǒng)的復(fù)雜性和對綜合知識要求較高。因此在設(shè)計階段我們查閱了很多資料,加深了對數(shù)據(jù)庫知識的認(rèn)識。在設(shè)計過程中,在需求分析、數(shù)據(jù)庫概念模型設(shè)計、數(shù)據(jù)庫邏輯模型設(shè)計、數(shù)據(jù)庫實施設(shè)計階段和同學(xué)進(jìn)行了反復(fù)的討論、研究逐漸完善了整個圖書數(shù)據(jù)庫管理系統(tǒng)。</p><p>  在需求分析階段,我對各種各樣的客戶的信息需求、處理需求、安全性與完整性需求進(jìn)行了分析,繪制

57、了數(shù)據(jù)流圖;建立了數(shù)據(jù)項表、數(shù)據(jù)結(jié)構(gòu)表、數(shù)據(jù)流表、數(shù)據(jù)存儲表和處理過程表。</p><p>  在概念模型設(shè)計階段,根據(jù)需求分析情況,設(shè)計出相應(yīng)的局部E-R數(shù)據(jù)模型,根據(jù)不同的實體之間的聯(lián)系,分為1:1,1:n,n:m 三種情況考慮。然后將各局部E-R圖集成為全局E-R圖,在這過程中我充分考慮到了各種沖突。對各個實體和關(guān)系進(jìn)行了描述,并且根據(jù)應(yīng)用要求消除了冗余實體和冗余關(guān)系。</p><p&g

58、t;  在數(shù)據(jù)庫邏輯模型設(shè)計階段,將全局E-R圖轉(zhuǎn)換成關(guān)系模式,確定各關(guān)系模式的函數(shù)依賴關(guān)系,并且對依賴關(guān)系進(jìn)行了規(guī)范化處理。同時為了更好滿足不同用戶的應(yīng)用需求進(jìn)行了關(guān)系調(diào)整,優(yōu)化了數(shù)據(jù)庫的運用。建立了基本結(jié)構(gòu)表,并且對基本表給出了主鍵和外鍵,確定了其完整化約束。并確定了外模式和數(shù)據(jù)視圖。 </p><p>  綜上所述,我們設(shè)計的圖書館管理數(shù)據(jù)庫系統(tǒng),符合關(guān)系數(shù)據(jù)庫的基本體系結(jié)構(gòu),達(dá)到關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)。<

59、/p><p><b>  參考文獻(xiàn)</b></p><p>  [1] 楊學(xué)全 主編, SQL Server實例教程(第二版)[M]. 北京::電子工業(yè)出版社。 2007年9月。</p><p>  [2] 于國防,李劍,C#語言Windows程序設(shè)計[M].北京:清華大學(xué)出版社。2010年9月。</p><p>  [3]

60、 史濟民, 顧春華, 李昌武, 苑榮 編著。軟件工程——原理、方法與應(yīng)用[M]. 北京: 高等教育出版社.。2004年1月。 </p><p>  [4] 張海藩 編著。軟件工程導(dǎo)論[M]. 北京: 清華大學(xué)出版社. 2005年10月.。</p><p>  [5] 張奇, 李律松, 衛(wèi)建偉 等編著.。Visual C#數(shù)據(jù)庫項目案例導(dǎo)航[M]. 北京: 清華大學(xué)出版社。 2005年6月.

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論