網(wǎng)上書店管理信息系統(tǒng)--數(shù)據(jù)庫課程設(shè)計_第1頁
已閱讀1頁,還剩22頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p>  課 程 設(shè) 計</p><p><b> ?。〝?shù)據(jù)庫系統(tǒng)原理)</b></p><p>  網(wǎng)上書店管理信息系統(tǒng)</p><p>  二○一一年一月十三日</p><p>  課程設(shè)計任務(wù)書及成績評定</p><p>  Ⅰ、題目的目的和要求 </p>&

2、lt;p>  通過數(shù)據(jù)庫系統(tǒng)原理課程設(shè)計的操作與實踐,使學(xué)生了解關(guān)系數(shù)據(jù)庫的相關(guān)理論知識和有關(guān)工具軟件的使用技巧,在一定程度上提高應(yīng)用程序的綜合開發(fā)能力和創(chuàng)新意識、創(chuàng)新能力,具體掌握的基本能力有以下幾方面:</p><p>  1、學(xué)習(xí)和鞏固《數(shù)據(jù)庫系統(tǒng)原理》的基本知識。</p><p>  2、關(guān)系數(shù)據(jù)庫管理系統(tǒng)的基本使用方法。</p><p>  3、熟悉

3、SQL語言的主要功能及SQL語句的使用操作。</p><p>  4、熟悉數(shù)據(jù)庫管理系統(tǒng)的設(shè)計過程,培養(yǎng)解決實際問題的能力。</p><p>  5、小型數(shù)據(jù)庫應(yīng)用系統(tǒng)的設(shè)計方法。</p><p>  要求獨(dú)立完成該課題設(shè)計。</p><p> ?、?、設(shè)計進(jìn)度及完成情況</p><p> ?、?、主要參考文獻(xiàn)及資料<

4、;/p><p>  [1]王珊,薩師煊主編.數(shù)據(jù)庫系統(tǒng)概論(第四版).北京:高等教育出版社,2006.5</p><p>  [2]何志丹 著 深入淺出 Visual c++入門、進(jìn)階與應(yīng)用實例 人民郵電出版社 </p><p>  [3] 維埃拉 著,董明 譯 SQL Server 2005 高級程序設(shè)計 人民郵電出版社 </p><p>

5、  [4] 李俊民著 精通 SQL——結(jié)構(gòu)化查詢語言詳解 人民郵電出版社 </p><p>  學(xué)科部主任___________</p><p><b> ?、?、成績評定</b></p><p>  設(shè)計成績: </p><p>  指導(dǎo)老師: <

6、/p><p>  二○一一年 月 日</p><p><b>  目 錄</b></p><p>  第一章 系統(tǒng)概述…………………………………………………2</p><p>  第二章 系統(tǒng)分析…………………………………………………2</p><p>  第三章 功能分析…………………………

7、………………………7</p><p>  第四章 系統(tǒng)實現(xiàn)…………………………………………………8</p><p>  第五章 調(diào)試過程中的問題及系統(tǒng)測試情況……………………15</p><p>  第六章 結(jié)束語……………………………………………………20</p><p><b>  第一章 概述</b></p&

8、gt;<p>  目前社會上信息管理系統(tǒng)發(fā)展飛速,越來越多的企事業(yè)單位都引入了信息管理軟件來管理自己日益增長的各種信息。各種網(wǎng)店也相繼采用了不同的管理系統(tǒng)來管理商品信息,取得了很大的成效,網(wǎng)上書店管理系統(tǒng)也在功能上不但完善和加強(qiáng),為了使書店管理更 加規(guī)范化,程序化,科學(xué)化,我們研發(fā)了這次的網(wǎng)上書店管理系統(tǒng)。 </p><p>  本系統(tǒng)的功能是為管理者提供方便的管理、為顧客提供快捷的購買。系統(tǒng)的主要

9、子模塊有圖書管理,顧客管理等,可實現(xiàn)日常圖書進(jìn)貨、發(fā)貨業(yè)務(wù),最終達(dá)到提高工作效率的目的。顧客可以進(jìn)入圖書查詢界面通過圖書類別、圖書名稱、圖書編號、折扣額度等四種方式查詢圖書,查到滿意的圖書后可點(diǎn)擊購買。管理者可以通過登錄管理界面實現(xiàn)對圖書的添加、修改、刪除操作以及發(fā)貨和查看顧客信息, 管理員可以維護(hù)客戶注冊信息、維護(hù)圖書信息、處訂定單信息、維護(hù)系統(tǒng)公告、網(wǎng)上售書。</p><p><b>  第二章 系

10、統(tǒng)分析</b></p><p><b>  §2.1需求分析</b></p><p>  2.1.1系統(tǒng)需求 </p><p>  書店管理系統(tǒng)需要滿足來自三個方面需求:第一,書店工作人員通過計算機(jī)來管理各類圖書,進(jìn)行圖書分類編號,調(diào)整圖書結(jié)構(gòu),增加圖書庫存,適應(yīng)讀者的需求。第二,工作人員對讀者的需求情況能作好全面的掌握,

11、及時得到歷史銷售記錄。第三,也是書店的核心工作,對圖書的銷售管理。</p><p><b>  2.1.1功能需求</b></p><p>  基于系統(tǒng)需求分析,該系統(tǒng)需要實現(xiàn)以下基本功能:</p><p><b>  1、主界面管理</b></p><p>  本系統(tǒng)的使用用戶分兩種:管理員和顧客

12、。管理員具有使用本系統(tǒng)的所有功能,而顧客需要具有日常書店的管理功能即可。主界面中需要顧客注冊、顧客登錄和管理員登錄和三個功能,可以分別進(jìn)入各自功能界面。</p><p><b>  2、添加功能</b></p><p>  新顧客可以通過此模塊填寫自己的各項信息。顧客可以通過此模塊完成購賣書籍等操作。管理員可以管理界面中輸入書籍的各項信息。</p>&l

13、t;p><b>  3、修改功能</b></p><p>  管理員可以通過次模塊來管理各類圖書信息,包括圖書信息的修改。在進(jìn)行圖書的修改時,根據(jù)用戶選定的書進(jìn)行修改,即列出所有用戶選定的信息,在這個基礎(chǔ)上進(jìn)行圖書信息的修改。</p><p><b>  4、刪除功能</b></p><p>  管理員可以通過此模塊

14、完成對圖書信息的刪除等操作</p><p><b>  5、查詢功能</b></p><p>  通過查詢功能,顧客可以對書籍按不同方式進(jìn)行查詢。管理員可以查詢書籍的信息和銷售情況。</p><p><b>  6、顯示功能</b></p><p>  通過此功能,可以將所需信息顯示的列表框中。便于

15、顧客和管理員觀察使用數(shù)據(jù)庫。</p><p>  根據(jù)功能分析的結(jié)果,網(wǎng)上書店管理系統(tǒng)主模塊圖如圖2.1所示。</p><p><b>  §2.2數(shù)據(jù)字典</b></p><p><b>  2.2.1一數(shù)據(jù)項</b></p><p><b>  圖書數(shù)據(jù)字典</b>

16、;</p><p><b>  顧客數(shù)據(jù)字典</b></p><p><b>  管理員數(shù)據(jù)字典</b></p><p><b>  訂單表數(shù)據(jù)字典</b></p><p><b>  2.2.2數(shù)據(jù)結(jié)構(gòu)</b></p><p> 

17、 §2.3概念結(jié)構(gòu)設(shè)計(E—R圖)</p><p>  根據(jù)對網(wǎng)上書店的需求分析,畫出如下實體的ER圖和實體之間的關(guān)系ER圖。</p><p>  圖2.2圖書信息ER圖</p><p>  圖2.3 顧客信息ER圖</p><p>  圖2.4 管理員信息ER圖</p><p>  圖2.5訂單表信息ER圖

18、</p><p>  圖2.6 實體之間關(guān)系ER圖</p><p>  §2.4邏輯結(jié)構(gòu)設(shè)計(關(guān)系模式---關(guān)系)</p><p>  下面是把上面E-R圖轉(zhuǎn)化關(guān)系模式(關(guān)系的碼用下劃線標(biāo)出):</p><p>  圖書(書籍編號、書籍類別、書籍名稱、書籍價格、書籍簡介、書籍折扣、庫存數(shù)量)</p><p>

19、  顧客(顧客編號、顧客密碼、顧客姓名、顧客性別、顧客年齡、顧客住址、聯(lián)系電話)</p><p>  管理員(管理員登陸名、管理員密碼)</p><p>  訂單表(訂單號、書籍編號、顧客編號、顧客姓名、顧客住址、聯(lián)系電話、付款方式、發(fā)貨方式)</p><p><b>  第三章 功能分析</b></p><p><

20、;b>  第四章 系統(tǒng)實現(xiàn)</b></p><p>  §4.1 數(shù)據(jù)庫連接</p><p>  本軟件使用 ODBC 連接數(shù)據(jù)庫,基本思想為為數(shù)據(jù)庫中每個表建立一個 RecordSet 類,</p><p>  當(dāng)要對表中數(shù)據(jù)進(jìn)行操作時,創(chuàng)建相關(guān)記 錄集,即可引用類中的響應(yīng)函數(shù)進(jìn)行添加、修改 、</p><p>

21、;  刪除、查詢等操作。 </p><p><b>  §4.2主界面</b></p><p>  主界面中顯示顧客登錄、管理員登錄和顧客 注冊三個按鈕,顧客輸入登錄名和密碼后點(diǎn)</p><p>  擊顧客登錄后進(jìn)入顧客查詢界面,管理員 輸入登錄名和密碼后點(diǎn)擊管理員登錄后進(jìn)入管理 界</p><p>  面,若

22、是新顧客,直接點(diǎn)擊注冊即可進(jìn)入注 冊界面,各對話框之間的連接通過 DoModal()函</p><p>  數(shù)實現(xiàn),若需要進(jìn)行身份驗證,未輸入用 戶名或密碼則將彈出提示對話框“請輸入用戶名 和</p><p>  密碼!”,輸入后系統(tǒng)將進(jìn)入相應(yīng)的數(shù)據(jù) 庫表查詢是否有此信息,若無對應(yīng)信息則彈出對 話框</p><p>  提示輸入信息錯誤,信息正確方可進(jìn)入下 一界面,

23、如顧客登錄時,系統(tǒng)使用以下代碼完成 身</p><p>  份驗證功能,同時記錄下用戶信息以便加入訂單: </p><p>  //生成查詢用戶賬號和密碼的 SQL 語句 </p><p>  mSqlStr= "select * from customer where cno='"; </p><p>  mSq

24、lStr=mSqlStr + m_no; </p><p>  mSqlStr=mSqlStr + "'and cpass='"; </p><p>  mSqlStr=mSqlStr + m_password; </p><p>  mSqlStr=mSqlStr + "'"; </p>

25、<p>  if(!customer.Open(AFX_DB_USE_DEFAULT_TYPE,mSqlStr)) </p><p><b>  {</b></p><p>  AfxMessageBox("customer 表打開失敗!"); </p><p><b>  return; </b

26、></p><p><b>  }</b></p><p>  if(!customer.IsBOF()) </p><p><b>  { </b></p><p>  //Open all function for user </p><p>  m_custome

27、r_no=customer.m_cno; </p><p>  m_customer_name=customer.m_cname; </p><p>  m_customer_phone=customer.m_cphone; </p><p>  m_customer_add=customer.m_cadd; </p><p>  AfxMe

28、ssageBox("密碼正確,歡迎登錄!"); </p><p>  EndDialog(IDCANCEL); </p><p><b>  Cgkcx a; </b></p><p>  a.DoModal(); </p><p><b>  } </b></p>

29、<p><b>  else </b></p><p><b>  { </b></p><p>  AfxMessageBox("密碼輸入錯誤!!"); </p><p><b>  return; </b></p><p><b>

30、  }</b></p><p><b>  §4.3添加功能 </b></p><p>  本軟件的添加功能使用 AddNew()函數(shù),應(yīng)用在顧客注冊、顧客購書、管理員添加新書等</p><p><b>  模塊。 </b></p><p>  1)顧客注冊:新顧客在

31、主界面中點(diǎn)擊注冊后即可進(jìn)入注冊界面填寫自己的各項信息,完</p><p>  成后點(diǎn)擊確定,信息添加到 customer 表中,并利用觸發(fā)器自動生成顧客編號作為登錄名。相</p><p><b>  關(guān)代碼如下: </b></p><p>  setcustomer c; </p><p>  c.Open(); <

32、;/p><p>  c.AddNew(); </p><p>  UpdateData(TRUE); </p><p>  if(m_name.IsEmpty()||m_phone.IsEmpty()||m_add. IsEmpty()||m_password.IsEmpty()||m_mima</p><p>  .IsEmpty()) <

33、;/p><p><b>  { </b></p><p>  MessageBox("請輸入全部信息!"); </p><p><b>  return; </b></p><p><b>  } </b></p><p>  if(m_

34、password!=m_mima) </p><p><b>  { </b></p><p>  MessageBox("密碼錯誤,請確認(rèn)!"); </p><p><b>  return; </b></p><p><b>  } </b></p

35、><p>  c.m_cpass=m_password; </p><p>  c.m_cname=m_name; </p><p>  if(m_sex==0)</p><p>  c.m_csex="男"; </p><p>  else c.m_csex="女"; </p

36、><p>  c.m_cage=m_age; </p><p>  c.m_cphone=m_phone; </p><p>  c.m_cadd=m_add; </p><p>  c.m_cpass=m_password; </p><p>  if(m_sex==0)</p><p>  c.

37、m_csex="男"; </p><p>  else c.m_csex="女"; </p><p>  c.Update(); </p><p>  c.Requery(); </p><p>  m_customer_zhanghao=c.m_cno; </p><p>  

38、UpdateData(FALSE); </p><p>  m_customer_xingming=m_name; </p><p>  m_customer_mima=m_password; </p><p>  EndDialog(IDCANCEL); </p><p><b>  Cxxqr a; </b><

39、/p><p>  a.DoModal(); </p><p>  2)顧客購書:顧客在查詢界面中選擇想要購買的圖書后點(diǎn)擊購買可進(jìn)入購買界面,選擇</p><p>  付款方式、送貨方式并確認(rèn)后,相關(guān)信息添加到 orders 表中,并利用觸發(fā)器自動生成訂單號。</p><p><b>  相關(guān)代碼如下: </b></p&

40、gt;<p>  Csetorders order; </p><p>  setbook book; </p><p>  order.Open(); </p><p>  order.AddNew(); </p><p>  UpdateData(TRUE); </p><p>  if(m_zhif

41、u==0)</p><p>  order.m_opay="網(wǎng)銀支付"; </p><p>  else order.m_opay="貨到付款"; </p><p>  if(m_songhuo==0 )</p><p>  order.m_oconvey="快遞"; </p&

42、gt;<p>  else order.m_oconvey="EMS"; </p><p>  order.m_bno=m_book_no; </p><p>  order.m_cadd=m_customer_add; </p><p>  order.m_cname=m_customer_name; </p>&l

43、t;p>  order.m_cno=m_customer_no; </p><p>  order.m_cphone=m_customer_phone; </p><p>  order.Update(); </p><p>  order.Requery(); </p><p>  m_order_no=order.m_ono; &l

44、t;/p><p>  book.Open(); </p><p>  book.Edit(); </p><p>  book.m_bstock--; </p><p>  book.Update(); </p><p>  book.Requery();</p><p>  book.Close(

45、); </p><p>  UpdateData(FALSE); </p><p>  CString temp; </p><p>  temp .Format("購買成功!"); </p><p>  AfxMessageBox(temp); </p><p>  EndDialog(IDCAN

46、CEL); </p><p><b>  Cgkcx a; </b></p><p>  a.DoModal(); </p><p>  3)管理員添加新書:管理員在管理界面中輸入各項信息后點(diǎn)擊添加,圖示信息即可被添</p><p>  加到 book 表中,相關(guān)代碼如下: </p><p>  

47、setbook a,b; </p><p>  a.Open(); </p><p>  a.AddNew(); </p><p>  UpdateData(TRUE); </p><p>  if(m_no.IsEmpty()||m_kind.IsEmpty()||m_name.IsEmpty()||m_price.IsEmpty()||m

48、_intro.IsEmpt</p><p>  y()||m_dis==0||m_stock==0) </p><p>  { MessageBox("請輸入全部信息!"); </p><p><b>  return; </b></p><p><b>  } </b>&l

49、t;/p><p>  if(b.IsOpen()) b.Close(); </p><p>  if(m_no!=_T("")) </p><p><b>  { </b></p><p>  b.m_strFilter.Format("bno='%s'",m_no);

50、 </p><p>  b.Open(); </p><p>  if(b.m_bno!=_T("")) </p><p><b>  { </b></p><p>  MessageBox("已經(jīng)有這條記錄了!"); </p><p><b> 

51、 return; </b></p><p><b>  } </b></p><p><b>  } </b></p><p>  a.m_bno=m_no; </p><p>  a.m_bkind=m_kind; </p><p>  a.m_bname=m_

52、name; </p><p>  a.m_bprice=m_price;</p><p>  a.m_bintro=m_intro; </p><p>  a.m_bdis=m_dis;</p><p>  a.m_bstock=m_stock; </p><p>  CString aa,bb; </p>

53、<p>  m_list.InsertItem(0,a.m_bno,0); </p><p>  m_list.SetItemText(0,1,a.m_bkind); </p><p>  m_list.SetItemText(0,2,a.m_bname); </p><p>  m_list.SetItemText(0,3,a.m_bprice);

54、</p><p>  m_list.SetItemText(0,4,a.m_bintro); </p><p>  aa.Format("%d",a.m_bdis); </p><p>  m_list.SetItemText(0,5,aa); </p><p>  bb.Format("%d",a.m

55、_bstock); </p><p>  m_list.SetItemText(0,6,bb); </p><p>  a.Update(); </p><p>  a.Requery(); </p><p>  UpdateData(FALSE); </p><p>  a.Close(); </p>

56、<p><b>  §4.4修改功能</b></p><p>  修改功能使用 Edit()函數(shù),主要應(yīng)用在管理員對圖書信息的修改方面,其中圖書編號不可</p><p>  修改,若修改則出現(xiàn)錯誤提示,相關(guān)代碼如下: </p><p>  setbook a; </p><p>  a.Open();

57、 </p><p>  a.Edit(); </p><p>  UpdateData(TRUE); </p><p>  if(m_no.IsEmpty()) </p><p>  { MessageBox(" 請選擇圖書!"); </p><p><b>  return; &

58、lt;/b></p><p><b>  } </b></p><p>  if(no!=m_no) </p><p><b>  { </b></p><p>  MessageBox("圖書編號不允許修改!"); </p><p><b&g

59、t;  return; </b></p><p><b>  } </b></p><p>  m_list.DeleteAllItems(); </p><p>  a.m_bkind=m_kind; </p><p>  a.m_bname=m_name; </p><p>  a

60、.m_bprice=m_price;</p><p>  a.m_bintro=m_intro; </p><p>  a.m_bdis=m_dis;</p><p>  a.m_bstock=m_stock; </p><p>  CString aa,bb; </p><p>  m_list.InsertItem

61、(0,a.m_bno,0); </p><p>  m_list.SetItemText(0,1,a.m_bkind); </p><p>  m_list.SetItemText(0,2,a.m_bname); </p><p>  m_list.SetItemText(0,3,a.m_bprice); </p><p>  m_list.

62、SetItemText(0,4,a.m_bintro); </p><p>  aa.Format("%d",a.m_bdis); </p><p>  m_list.SetItemText(0,5,aa); </p><p>  bb.Format("%d",a.m_bstock); </p><p>

63、;  m_list.SetItemText(0,6,bb); </p><p>  a.Update(); </p><p>  a.Requery(); </p><p>  UpdateData(FALSE); </p><p>  a.Close(); </p><p><b>  §4.5刪

64、除功能 </b></p><p>  刪除功能使用 Delete()函數(shù),應(yīng)用在管理員對圖書信息的刪除及查看訂單后發(fā)貨方面: </p><p>  1)圖書信息刪除:管理員查找到要刪除的圖書后選中,點(diǎn)擊刪除按鈕即可將 book 表中</p><p>  該圖書信息刪除,相關(guān)代碼如下: </p><p>  UpdateD

65、ata(TRUE); </p><p>  int n=m_list.GetSelectionMark(); </p><p>  setbook b;</p><p>  if(m_no.IsEmpty()) </p><p><b>  { </b></p><p>  MessageBox(

66、"請選擇圖書!"); </p><p><b>  return; </b></p><p><b>  } </b></p><p>  b.m_strFilter.Format("bno='%s'",m_no); </p><p>  b.

67、Open(); </p><p>  if(b.IsEOF()) </p><p><b>  { </b></p><p>  MessageBox("沒有此記錄!"); </p><p><b>  return; </b></p><p><b

68、>  } </b></p><p>  b.Delete(); </p><p>  m_list.DeleteItem(n); </p><p>  b.Close(); </p><p>  2)發(fā)貨:管理員查看訂單后選中要發(fā)送的圖書,點(diǎn)擊發(fā)貨即可在 o rders 表中將該訂單刪</p><p>

69、;  除,相關(guān)代碼如下: </p><p>  int n=m_list.GetSelectionMark(); </p><p>  //創(chuàng)建訂單記錄集 </p><p>  Csetorders order;</p><p>  if(m_ono.IsEmpty()) </p><p><b>  {&l

70、t;/b></p><p>  MessageBox("請選擇訂單!"); </p><p><b>  return; </b></p><p><b>  } </b></p><p>  order.m_strFilter.Format("ono='

71、%s'",m_ono); </p><p>  order.Open(); </p><p>  if(order.IsEOF()) </p><p><b>  { </b></p><p>  MessageBox("沒有此記錄!"); </p><p>

72、<b>  Return;</b></p><p><b>  } </b></p><p>  while(!order.IsEOF()) </p><p><b>  { </b></p><p>  order.Delete(); </p><p&g

73、t;  order.MoveNext(); </p><p><b>  } </b></p><p><b>  //關(guān)閉記錄集 </b></p><p>  order.Close(); </p><p>  m_list.DeleteItem(n); </p><p>

74、  UpdateData(FALSE); </p><p><b>  §4.6查詢功能 </b></p><p>  查詢功能應(yīng)用于顧客購書前對書籍的查詢和管理員對書籍的查詢,以顧客查詢?yōu)槔?,?lt;/p><p>  客查詢可按照圖書編號、圖書類別、圖書 名稱、折扣額度等四種方式,其中圖書類別和圖 書</p>

75、<p>  名稱都可實現(xiàn)模糊查詢,在相關(guān)表中查找 到正確信息后顯示在列表框內(nèi),以圖書名稱和折 扣</p><p>  額度為例,相關(guān)代碼如下: </p><p>  UpdateData(TRUE); </p><p>  setbook book; </p><p>  if(m_fangshi!=0&&m_fan

76、gshi!=1&&m_fangshi!=2&&m_fangshi!=3) </p><p><b>  { </b></p><p>  AfxMessageBox("請選擇查詢類別!"); </p><p><b>  return; </b></p>&

77、lt;p><b>  } </b></p><p>  //出現(xiàn)問題:不能讀取 m_kind,原因:IsEmpty()少了小括號 </p><p>  if(m_fan gshi==1) </p><p><b>  { </b></p><p>  if(m_name.IsEmpty())

78、</p><p><b>  { </b></p><p>  AfxMessageBox("請輸入圖書名稱!"); </p><p><b>  return; </b></p><p><b>  } </b></p><p> 

79、 setbook book; </p><p>  if(book.IsOpen()) book.Close(); </p><p>  CString tmp; </p><p>  tmp.Format("%%%s%% ",m_name); </p><p>  m_name=tmp; </p><

80、p>  book.m_strFilter.Format("bname LIKE '%s'",m_name); </p><p>  book.Open(); </p><p>  m_list.DeleteAllItems(); </p><p>  int i=0; } </p><p>  if(

81、book.IsEOF()) </p><p><b>  { </b></p><p>  MessageBox(" 目前暫沒有您要的書目!"," 提示",MB_OK); </p><p><b>  return; </b></p><p&

82、gt;<b>  } </b></p><p>  while(!book.IsEOF()) </p><p><b>  { </b></p><p>  CString aa,bb; </p><p>  m_list.InsertItem(i,book.m_bno,0); </p>

83、<p>  m_list.SetItemText(i,1,book.m_bkind); </p><p>  m_list.SetItemText(i,2,book.m_bname); </p><p>  m_list.SetItemText(i,3,book.m_bprice); </p><p>  m_list.SetItemText(i,4,

84、book.m_bintro); </p><p>  aa.Format("%d",book.m_bdis); </p><p>  m_list.SetItemText(i,5 ,aa); </p><p>  bb.Format("%d",book.m_bstock); </p><p>  m_l

85、ist.SetItemText(i,6,bb); </p><p><b>  i++; </b></p><p>  book.MoveNext(); </p><p><b>  } </b></p><p><b>  }</b></p><p>

86、  if(m_fan gshi==3) </p><p><b>  { </b></p><p>  if(m_dis==0) </p><p><b>  { </b></p><p>  AfxMessageBox("請輸入查詢內(nèi)容!"); </p><

87、p><b>  return; </b></p><p><b>  } </b></p><p>  if(book.IsOpen()) book.Close(); </p><p>  book.m_strFilter.Format("bdis<='%d'",m_dis)

88、; </p><p>  book.Open(); </p><p>  m_list.DeleteAllItems(); </p><p><b>  int i=0; </b></p><p>  if(book.IsEOF()) </p><p><b>  { </b>

89、;</p><p>  MessageBox(" 目前暫沒有您要的書目!"," 提示",MB_OK); </p><p><b>  return; </b></p><p><b>  } </b></p><p>  while(!b

90、ook.IsEOF()) </p><p><b>  { </b></p><p>  CString aa,bb; </p><p>  m_list.InsertItem(i,book.m_bno,0); </p><p>  m_list.SetItemText(i,1,boo k.m_bkind); </

91、p><p>  m_list.SetItemText(i,2,boo k.m_bname); </p><p>  m_list.SetItemText(i,3,boo k.m_bprice); </p><p>  m_list.SetItemText(i,4,boo k.m_bintro); </p><p>  aa.Format(&quo

92、t;%d",book.m_bdis); </p><p>  m_list.SetItemText(i, 5,aa); </p><p>  bb.Format("%d",book.m_bstock); </p><p>  m_list.SetItemText(i,6,bb); </p><p><b&g

93、t;  i++; </b></p><p>  book.MoveNext(); </p><p><b>  }</b></p><p><b>  } </b></p><p><b>  §4.6顯示功能</b></p><p&g

94、t;  在本軟件中多次將信息顯示在列表框中,以圖書信息管理界面中顯示圖書信息為例,相</p><p><b>  關(guān)代碼如下: </b></p><p>  BOOL Cxsrk::OnInitDialog() </p><p>  { CDialog::OnInitDialog(); </p><p>  DWOR

95、D dwExStyle = LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES </p><p>  |LVS_EX_HEADERDRAGDROP |LVS_EX_ONECLICKACTIVATE | LVS_EX_UNDERLINEHOT; </p><p>  m_list.SetExtendedStyle(

96、dwExStyle); </p><p>  m_list.InsertColumn(0,"編號",LVCFMT_CENTER,50,0); </p><p>  m_list.InsertColumn(1,"類別",LVCFMT_CENTER,100,0); </p><p>  m_list.InsertColumn(2,

97、"名稱",LVCFMT_CENTER,200,0); </p><p>  m_list.InsertColumn(3,"價格",LVCFMT_CENTER,60,0); </p><p>  m_list.InsertColumn(4,"簡介",LVCFMT_CENTER,200,0); </p><p>

98、;  m_list.InsertColumn(5,"折扣",LVCFMT_CENTER,50,0); </p><p>  m_list.InsertColumn(6,"庫存",LVCFMT_CENTER,50,0); </p><p>  setbook a; </p><p><b>  a.Open();<

99、;/b></p><p><b>  int i=0;</b></p><p>  while(!a.IsEOF())</p><p>  { CString aa,bb; </p><p>  m_list.InsertItem(i,a.m_bno,0); </p><p>  m_lis

100、t.SetItemText(i,1,a.m_bkind); </p><p>  m_list.SetItemText(i,2,a.m_bname); </p><p>  m_list.SetItemText(i,3,a.m_bprice); </p><p>  m_list.SetItemText(i,4,a.m_bintro); </p>&l

101、t;p>  aa.Format("%d",a.m_bdis); </p><p>  m_list.SetItemText(i,5,aa); </p><p>  bb.Format("%d",a.m_bstock); </p><p>  m_list.SetItemText(i,6,bb); </p>

102、<p><b>  i++; </b></p><p>  a.MoveNext(); </p><p>  }a.Close(); </p><p>  return TRUE; // return TRUE unless you set the focus to a control </p><p>&

103、lt;b>  }</b></p><p>  第五章 調(diào)試過程中的問題及系統(tǒng)測試情況</p><p>  §5.1主界面展示 </p><p>  主界面如下圖 4.1 所示,有“顧客登錄”,“管理員登錄”和“現(xiàn)在注冊”三個按鈕: </p><p>  圖 5.1 主界面 </p><p>

104、;  顧客輸入正確的登錄名和密碼后點(diǎn)擊確定即可進(jìn)入顧客查詢界面,如下圖 5.2 所示: </p><p><b>  、</b></p><p>  圖 5.2 顧客查詢界面 </p><p>  管理員輸入正確的登錄名和密碼后點(diǎn)擊確定即可進(jìn)入管理界面,如下圖 5.3 所示: </p><p>  圖 5.3 管理內(nèi)

105、容選擇界面 </p><p>  新顧客點(diǎn)擊“現(xiàn)在注冊”即可進(jìn)入注冊界面,如下圖 5.4 所示: </p><p>  圖 5.4 顧客注冊界面 </p><p>  §5.2添加功能展示 </p><p>  5.2.1 顧客注冊 </p><p>  顧客在如上圖 4.4 所示的顧客注冊界面中輸入各項

106、信息且兩次輸入相同密碼后點(diǎn)擊確定,</p><p>  系統(tǒng)自動生成顧客編號作為登錄名,和密碼等顯示給顧客,如下圖 5.5 所示: </p><p>  圖 5.5 注冊信息確認(rèn)界面 </p><p>  5.2.2 顧客購書 </p><p>  顧客在如圖 4.3 所示的查詢界面中查到滿意的圖書后點(diǎn)擊購買,即可進(jìn)入購買圖書界面,<

107、;/p><p>  確認(rèn)圖書并選擇付款方式和送貨方式,如下圖 4.6 所示: </p><p>  圖 5.6 購買圖書界面 </p><p>  5.2.3 添加新書 </p><p>  管理員在如圖 4.3 所示的管理界面中選擇“書籍信息管理”,進(jìn)入如下圖 5.7 所示的書籍</p><p><b>

108、;  信息管理界面: </b></p><p>  圖 5.7 書籍信息管理界面 </p><p>  在編輯框中輸入各項信息后點(diǎn)擊“添加”,即可成功添加圖書信息,如下圖 4.8 所示: </p><p>  圖 4.8 添加圖書 </p><p>  §5.3修改功能展示</p><p> 

109、 管理員在如圖 5.7 所示的書籍信息管理界面中選中要修改的圖書,相關(guān)各項信息即可顯示</p><p>  在下方的編輯框中,在編輯框中修改信息后點(diǎn)擊“修改”即可成功修改 book 表中圖書信息,</p><p>  如下圖 5.9 所示: </p><p>  圖 5.9 修改圖書信息 </p><p>  §5.4刪除功能展示&

110、lt;/p><p>  5.4.1 圖書信息刪除 </p><p>  管理員在如圖 5.7 所示的書籍信息管理界面中選中要刪除的圖書,點(diǎn)擊刪除按鈕即可刪除</p><p>  該圖書,如下圖 5.10 所示</p><p>  圖 5.10 刪除圖書 </p><p>  點(diǎn)擊確定后可以看到該圖書在列表框中消失。 &

111、lt;/p><p>  5.4.2 發(fā)貨 </p><p>  管理員在如圖 5.3 所示的管理界面中選擇“查看訂單”即可進(jìn)入如下圖 5.11 所示的訂單</p><p>  查看界面,選中要發(fā)送的圖書后點(diǎn)擊“發(fā)貨”即可將該訂單從 orders 表中刪除:</p><p>  圖 5.11 訂單查看界面 </p><p

112、>  §5.5查詢功能展示 </p><p>  以如圖5.2所示的顧客查詢中折扣額度查詢?yōu)槔樵冋劭墼诹垡韵碌膱D書,如下圖5.12 所示:</p><p>  圖 5.12 折扣額度查詢</p><p><b>  第六章 結(jié)束語</b></p><p>  我的課程設(shè)計是網(wǎng)上書店管理系統(tǒng),通過這

113、次課程設(shè)計,使我更大程度上了解了信息管</p><p>  理系統(tǒng)的功能,提高了實踐能力。是對所學(xué)知識的一次綜合應(yīng)用,在課程設(shè)計過程中,我遇</p><p>  到了很多問題,如在列表框和編輯框中顯示 int 型和 float 型數(shù)據(jù)、調(diào)用別的類中生成的變</p><p>  量、自動生成顧客編號、自動生成訂單號等等,最終在老師和同學(xué)們的幫助下,這些問題都</

114、p><p>  一一得到圓滿解決,系統(tǒng)還有以下部分有待完善: </p><p> ?。?)數(shù)據(jù)庫安全性還有待加強(qiáng)。 </p><p> ?。?)還可以設(shè)置級聯(lián)使系統(tǒng)更加完善。 </p><p> ?。?)可以增加顧客對自己信息的修改權(quán)限,例如聯(lián)系方式、住址等的更改。 </p><p>  這次課程設(shè)計使我們更加熟悉的掌握了

115、 Visual C++語言和 SQL 語句的運(yùn)用,幫助我們熟</p><p>  悉了更多 VC++6.0 和 SQL Server2005 的功能,提高了我們的動手能力,在實踐中能 夠及時的</p><p>  發(fā)現(xiàn)問題、解決問題,學(xué)到了許多解決實 際問題的寶貴經(jīng)驗.同時也挖掘出了我們潛在的 能</p><p>  力,使我們對自己更有自信,對編程也更有興趣。 &

116、lt;/p><p>  最后,衷心感謝xx老師的悉心指導(dǎo)和同學(xué)們的熱情幫助,感謝學(xué)校給我們做課程設(shè)計的</p><p>  機(jī)會,使我們得到了很好的鍛煉,學(xué)無止 境,我們現(xiàn)在了解的東西還很少,還不能很好地 掌</p><p>  握自己的專業(yè)知識,我們要謙虛的積極認(rèn) 真學(xué)習(xí),不斷的增強(qiáng)自身的能力,提高個人素質(zhì) ,</p><p>  向一個真正的

溫馨提示

  • 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

提交評論