《數(shù)據(jù)庫原理及應用》課程設計---能源管理收費系統(tǒng)設計與實現(xiàn)_第1頁
已閱讀1頁,還剩16頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  《數(shù)據(jù)庫原理及應用》</p><p><b>  課程設計報告</b></p><p>  能源管理收費系統(tǒng)設計與實現(xiàn)</p><p>  姓 名:XXX</p><p>  班 級:11級計師</p><p>  學 號:XXXXXXXXXXXXX<

2、/p><p>  完成時間:2013年6月5日</p><p>  1 需求分析- 2 -</p><p>  1.1背景分析- 2 -</p><p>  1.2功能分析- 2 -</p><p>  1.3運行環(huán)境- 3 -</p><p>  2 總體設計- 5 -</p&

3、gt;<p>  2.1功能模塊設計- 5 -</p><p>  3 數(shù)據(jù)庫設計- 6 -</p><p>  3.1數(shù)據(jù)庫概念結(jié)構(gòu)設計- 6 -</p><p>  3.2數(shù)據(jù)庫邏輯結(jié)構(gòu)設計- 7 -</p><p>  4 詳細設計- 8 -</p><p>  4.1系統(tǒng)總體結(jié)構(gòu)設計

4、- 8 -</p><p>  4.2 系統(tǒng)登錄模塊的設計- 9 -</p><p>  5 系統(tǒng)實現(xiàn)- 10 -</p><p>  5.1登錄模塊的實現(xiàn)- 10 -</p><p>  5.2系統(tǒng)主界面設計- 12 -</p><p>  5.3 普通用戶則進入用戶查詢模塊- 16 -</p&g

5、t;<p>  參考文獻- 17 -</p><p>  總 結(jié)- 17 -</p><p><b>  1 需求分析</b></p><p><b>  1.1背景分析</b></p><p>  信息化建設是供電局建設的重要部分,是一項基礎性、長期性和經(jīng)常性的工作,其建

6、設水平是供電局整體管理水平、供電局形象和地位的重要標志。信息技術(shù)的發(fā)展可謂日新月異,然而它在管理電費上的應用卻比較滯后。近幾年,各校的供電局信息化建設都在如火如荼地進行著,“供電局信息化管理”被提的很多,但就目前全國供電局的總體情況來看,大多仍處于信息性階段,我們?nèi)匀辉诿髟鯓硬拍芨行У刈屵@些信息技術(shù)手段為管理電費服務。供電局相對一般單位而言,擁有更多更專業(yè)的人才,掌握著更多的技術(shù)和信息,有更活躍的思維,理應在這條路上走在前端。如何將

7、信息化技術(shù)引入到現(xiàn)代供電局管理中來,已是擺在我們每一個人員面前的課題。 為了在供電局信息化管理方面的探索,我選擇了“電費系統(tǒng)”的開發(fā)作為自己的課程設計課題。通過這篇課程論文,我將對這段時間的學習作做一回顧,并詳細論述采用在B\S模式下ASP技術(shù)分析、設計、開發(fā)供電局的電費系統(tǒng)的過程。該系統(tǒng)基本滿足了用戶(供電局)在電費管理方面的需求,用戶界面友好。系統(tǒng)對用戶數(shù)據(jù)有效地實現(xiàn)了信息電子化處理,從而降低了人工勞動并增加的信息的準確性。&

8、lt;/p><p>  本系統(tǒng)采用PowerBuilder與SQL Server作為開發(fā)工具,通過數(shù)據(jù)庫的連接,讓PowerBuilder運行在服務器端,每當用戶進入系統(tǒng),可以查詢每月的能源用量,收費情況。</p><p><b>  1.2功能分析</b></p><p>  通過對系統(tǒng)的初步調(diào)查,明確了系統(tǒng)開發(fā)的目標為:按照管理信息系統(tǒng)的原理和

9、方法,采用相對成熟、先進的信息技術(shù)和手段,支持供電局能源收費管理全過程,該系統(tǒng)基本滿足了用戶(供電局)在電費管理方面的需求,系統(tǒng)對用戶數(shù)據(jù)有效地實現(xiàn)了信息電子化處理,從而降低了人工勞動并增加的信息的準確性。系統(tǒng)需主要完成的功能有:</p><p>  用戶登錄:用戶能登陸該系統(tǒng),并使每次進入統(tǒng)時會自動提示并驗</p><p>  證用戶身份,達到安全管理的目的。</p>&l

10、t;p>  用戶管理:方便管理員進行用戶信息的增加,刪除,修改以及對用</p><p><b>  戶權(quán)限的的設置。</b></p><p>  能源管理:增加能源的種類、更改能源的單價等。</p><p>  信息查詢:使用戶能夠進行能源單價和能源用量以及用戶需繳納費</p><p><b>  用的查

11、詢。</b></p><p>  用戶交費:查詢出能源使用情況及需繳納費用之后可以通過網(wǎng)上銀</p><p><b>  行進行自助繳費。</b></p><p>  為了創(chuàng)建一個能源管理收費系統(tǒng)的概貌并實現(xiàn)基本功能,需要完成以下模塊:</p><p>  圖1.2-1 系統(tǒng)構(gòu)造模型</p>&

12、lt;p><b>  1.3運行環(huán)境</b></p><p><b>  1.硬件環(huán)境</b></p><p>  硬件環(huán)境:硬件平臺是指開發(fā)與運行所需要的硬件環(huán)境,主要包括計算機機型及硬件配置。由于本系統(tǒng)是一個小型互動交流系統(tǒng),因此對計算機硬件的要求不高,比較經(jīng)濟,只要配備如表1-1所示的就可以:</p><p>

13、  表1-1 系統(tǒng)開發(fā)環(huán)境基本配置表</p><p><b>  2.軟件環(huán)境</b></p><p>  操作系統(tǒng): Windows 2000/Windows XP</p><p>  數(shù)據(jù)庫:SQL Server 2000</p><p>  軟件開發(fā)語言:ASP</p><p>  該軟件的

14、界面美觀大方,軟件運行穩(wěn)定。</p><p>  3.系統(tǒng)開發(fā)模式—B/S模式</p><p>  C/S,即Client/Server,采用Intranet技術(shù),適用于局域網(wǎng)環(huán)境,可重用性差。服務器通常采用高性能的PC、工作站或小型機,并采用大型數(shù)據(jù)庫系統(tǒng),如Oracle、Sybase、Informix或 SQL Server。客戶端需要安裝專用的客戶端軟件。</p>&l

15、t;p>  本系統(tǒng)基于互聯(lián)網(wǎng),而B/S,即Browser/Server模式是一種非常合適的體系結(jié)構(gòu),客戶端采用瀏覽器,WEB服務器采用Windows 2000 Server+IIS, 數(shù)據(jù)庫服務器采用 Windows 2000 Server+SQL Server,IIS服務器通過ODBC與數(shù)據(jù)庫連接,WEB服務器平臺采用微軟PowerBuilder技術(shù)。WEB 服務器作為中間層服務器,單獨放置在一臺主機上隔離外界與數(shù)據(jù)庫,起到了信

16、息服務器和防火墻的作用。采用B/S網(wǎng)絡結(jié)構(gòu)具有以下優(yōu)點:</p><p>  一是簡化了客戶端,只需在客戶端安裝瀏覽器軟件(IE或Netscape),不用在不同的客戶端上安裝不同的客戶運用程序;</p><p>  二是簡化了系統(tǒng)的開發(fā)和維護,B/S結(jié)構(gòu)的所有功能都在WEB服務器上實現(xiàn),使開發(fā)和維護工作大大減;</p><p>  三是用戶的操作使用更加簡單;<

17、;/p><p>  四是網(wǎng)上的信息發(fā)布更加便利。</p><p>  (3)B/S模式的三層結(jié)構(gòu)</p><p>  B/S(Browser/Server)即瀏覽器/服務器結(jié)構(gòu)的簡稱。從圖1-1的B/S結(jié)構(gòu)圖來看,該結(jié)構(gòu)的核心是中間層服務器,包括WEB服務器和相關(guān)的接口程序。WEB服務器負責接收WEB瀏覽器的WEB頁請求和數(shù)據(jù)請求,并處理WEB頁請求。數(shù)據(jù)庫接口程序?qū)?shù)

18、據(jù)請求轉(zhuǎn)換成數(shù)據(jù)庫服務器能夠接受的形式(如SQL),并送到數(shù)據(jù)庫服務器。在數(shù)據(jù)庫服務器根據(jù)數(shù)據(jù)請求執(zhí)行相應的數(shù)據(jù)庫操作(如查詢、修改、統(tǒng)計等)后,數(shù)據(jù)庫接口程序再將數(shù)據(jù)結(jié)果轉(zhuǎn)換送回WEB服務器。WEB服務器將結(jié)果處理成WEB瀏覽器能夠接受的形式(如HTML)后,發(fā)送WEB瀏覽器。WEB瀏覽器解釋執(zhí)行結(jié)果并將其顯示出來[6]。</p><p>  圖1-1 Browser/Server模式的三層分布結(jié)構(gòu)</p

19、><p><b>  2 總體設計</b></p><p><b>  2.1功能模塊設計</b></p><p>  系統(tǒng)從功能模塊的角度上劃分為以下幾個功能模塊:</p><p>  人員管理、能源管理、能源查詢、用戶繳費四大部分,以下是該系統(tǒng)的功能模塊圖見下圖2-1:</p>&l

20、t;p>  圖2-1 系統(tǒng)模塊圖</p><p>  以下是各個模塊具體實現(xiàn)功能介紹:</p><p><b>  1.人員管理功能:</b></p><p>  用戶信息管理:用戶登錄、用戶信息查詢。</p><p><b>  管理員權(quán)限管理:</b></p><p&

21、gt;  注冊用戶信息:包括添加用戶的工號,姓名,單位,住址,電話等</p><p><b>  信息。</b></p><p>  修改用戶信息:包括修改用戶的工號,姓名,單位,住址,電話等</p><p><b>  信息。</b></p><p>  刪除用戶信息:可以刪除任意用戶的信息。&l

22、t;/p><p><b>  2.能源管理:</b></p><p>  能源用量管理:包括每月能源使用量的查詢與預計。</p><p>  能源價格管理:能源價格的調(diào)整更新。</p><p>  3.能源查詢 :查詢能源情況,包括水、電、氣等的單價和用戶使用量。</p><p>  4.用戶繳費信息

23、查詢:根據(jù)用戶能源使用情況及能源價格由系統(tǒng)計算并給出用戶需要交費的情況,可查到水、電、氣等的用量及單價、費用、總價等。</p><p><b>  3 數(shù)據(jù)庫設計</b></p><p>  3.1數(shù)據(jù)庫概念結(jié)構(gòu)設計</p><p>  概念結(jié)構(gòu)設計的主要任務是根據(jù)用戶需求設計數(shù)據(jù)庫的概念數(shù)據(jù)模型。概念模型獨立于具體的數(shù)據(jù)庫管理系統(tǒng),它描述的

24、是從用戶角度看到的數(shù)據(jù)庫,反映了用戶的現(xiàn)實環(huán)境,而與數(shù)據(jù)庫將來怎樣實現(xiàn)無關(guān)。在需求分析基礎上設計出能夠滿足用戶各種需求的實體及它們之間的關(guān)系,從而為以后的邏輯結(jié)構(gòu)設計作好鋪墊。</p><p>  本系統(tǒng)實體E-R圖:</p><p> ?。?)數(shù)據(jù)庫的管理員概念結(jié)構(gòu):(E—R圖)</p><p> ?。?)數(shù)據(jù)庫的能源概念結(jié)構(gòu):(E—R圖)</p>

25、<p>  (3)數(shù)據(jù)庫的管理員概念結(jié)構(gòu):(E—R圖)</p><p> ?。?)關(guān)系圖:(E—R圖)</p><p>  3.2數(shù)據(jù)庫邏輯結(jié)構(gòu)設計</p><p>  邏輯設計是將現(xiàn)實世界的概念數(shù)據(jù)模型設計成為適應于特定數(shù)據(jù)庫管理系統(tǒng)的邏輯數(shù)據(jù)模式。邏輯數(shù)據(jù)模式也被簡稱為邏輯模型或數(shù)據(jù)模式,關(guān)系數(shù)據(jù)庫的數(shù)據(jù)模式是關(guān)系模式。如果數(shù)據(jù)庫采用關(guān)系數(shù)據(jù)庫,則需要

26、把E-R圖或類圖描述的概念數(shù)據(jù)模型轉(zhuǎn)換為等價的關(guān)系模式及其約束。</p><p><b>  權(quán)限表:</b></p><p><b>  2. 能源單價表:</b></p><p><b>  3.能源用量表:</b></p><p><b>  4.用戶權(quán)限表:&

27、lt;/b></p><p><b>  4 詳細設計</b></p><p>  4.1系統(tǒng)總體結(jié)構(gòu)設計</p><p>  開放式機房互動交流系統(tǒng)對用戶進行權(quán)限設置,保證合法用戶最大限度的獲得自己的合法操作。用戶的每次操作,系統(tǒng)都會對用戶的身份作出驗證,保證系統(tǒng)的最大安全性。</p><p>  由于系統(tǒng)的數(shù)

28、據(jù)都保存在數(shù)據(jù)庫中,所以當訪問數(shù)據(jù)時,都要使用ADO進行數(shù)據(jù)訪問,這樣可以避免系統(tǒng)直接訪問數(shù)據(jù)庫,保證數(shù)據(jù)的安全。</p><p>  開放式機房互動交流系統(tǒng)主要包括以下功能:</p><p><b> ?。?)用戶信息查詢</b></p><p><b> ?。?)能源價格查詢</b></p><p&

29、gt;<b> ?。?)能源用量查詢</b></p><p>  系統(tǒng)的總體工作示意圖如圖4-1所示:</p><p>  圖4-1 系統(tǒng)工作示意圖</p><p>  4.2 系統(tǒng)登錄模塊的設計</p><p>  在這個能源管理收費系統(tǒng)中,由登錄主界面進行管理員權(quán)限確定,從而進入管理界面或是查詢界面。在進行用戶登錄的

30、時候,要求檢驗用戶名和密碼的一致性,否則不能登錄。</p><p><b>  過程如下:</b></p><p>  輸入:用戶名和密碼。</p><p>  處理:檢驗用戶名和密碼的一致性。</p><p>  輸出:管理界面或是查詢界面。</p><p>  根據(jù)上述功能介紹,得到該模塊的程

31、序流程圖,如圖4-1所示:</p><p>  圖4-1 能源管理登陸模塊流程圖</p><p><b>  5 系統(tǒng)實現(xiàn)</b></p><p>  5.1登錄模塊的實現(xiàn)</p><p>  本頁面為能源管理收費系統(tǒng)提供一個登錄的界面。選擇登陸身份:是否為管理員,點擊登錄,進入登陸界面。</p><

32、;p>  用戶登錄界面,如圖5-1所示:</p><p>  ********這是用戶登錄界面******</p><p>  圖5-1 用戶登錄界</p><p><b>  實現(xiàn)的程序代碼為:</b></p><p>  string pwd,gran</p><p>  sle_1.

33、text=trim(sle_1.text)</p><p>  sle_2.text=trim(sle_2.text)</p><p>  gonghao=sle_1.text</p><p>  pwd=sle_2.text</p><p>  if sle_1.text="" or sle_2.text="&

34、quot; then</p><p>  messagebox("提示","請鍵入必要的信息",Information!)</p><p><b>  end if</b></p><p>  ////////////////////////////////</p><p>  i

35、f sle_1.text<>"" and sle_2.text<>"" then</p><p>  select Qualification.gran into :gran from Qualification where Qualification.number=:gonghao and Qualification.password=:pwd;&

36、lt;/p><p>  if sqlca.sqlcode<>0 or sqlca.sqlcode=100 then</p><p>  messagebox("錯誤","無此用戶,請檢查用戶名和密碼"+sqlca.sqlerrtext,Information!)</p><p>  elseif gran=rb_1.t

37、ext then</p><p>  open(w_user)</p><p>  elseif gran=rb_2.text then</p><p>  open(w_manager)</p><p><b>  end if</b></p><p><b>  end if&l

38、t;/b></p><p>  sle_2.text=""</p><p>  sle_1.text=""</p><p>  rb_1.checked=true</p><p>  5.2系統(tǒng)主界面設計</p><p>  登錄以后,如果是管理員則進入信息管理模塊:<

39、;/p><p>  *******這是能源價格管理模塊********(下圖)圖5.2-2</p><p>  ********這是能源用量管理模塊********(上圖)圖5.2-3</p><p><b>  實現(xiàn)的程序代碼為:</b></p><p>  tab_1.tabpage_1.dw_1.settransobj

40、ect(sqlca)</p><p>  tab_1.tabpage_1.dw_1.retrieve()</p><p>  int ll_info</p><p>  if dw_1.deletedcount()>0 or dw_1.modifiedcount()>0 then</p><p>  ll_info=message

41、box("提示","數(shù)據(jù)已經(jīng)改動,確認修改?",Information!,yesno!,2)</p><p>  choose case ll_info</p><p><b>  case 1</b></p><p>  dw_1.update()</p><p><b&g

42、t;  case 2</b></p><p><b>  return</b></p><p>  end choose</p><p><b>  end if</b></p><p>  if dw_1.update()>0 then</p><p>

43、;  commit using sqlca;</p><p>  messagebox("提示","成功修改數(shù)據(jù)庫",information!)</p><p><b>  end if</b></p><p>  tab_1.tabpage_2.dw_2.settransobject(sqlca)<

44、;/p><p>  tab_1.tabpage_2.dw_2.retrieve()</p><p>  int ll_info</p><p>  if dw_2.deletedcount()>0 or dw_2.modifiedcount()>0 then</p><p>  ll_info=messagebox("提示&

45、quot;,"數(shù)據(jù)已經(jīng)改動,確認修改?",Information!,yesno!,2)</p><p>  choose case ll_info</p><p><b>  case 1</b></p><p>  dw_2.update()</p><p><b>  case 2<

46、;/b></p><p><b>  return</b></p><p>  end choose</p><p><b>  end if</b></p><p>  if dw_2.update()>0 then</p><p>  commit usi

47、ng sqlca;</p><p>  messagebox("提示","成功修改數(shù)據(jù)庫",information!)</p><p><b>  end if</b></p><p>  tab_1.tabpage_3.dw_3.settransobject(sqlca)</p><

48、p>  tab_1.tabpage_3.dw_3.retrieve()</p><p>  int ll_info</p><p>  if dw_3.deletedcount()>0 or dw_3.modifiedcount()>0 then</p><p>  ll_info=messagebox("提示","數(shù)

49、據(jù)已經(jīng)改動,確認修改?",Information!,yesno!,2)</p><p>  choose case ll_info</p><p><b>  case 1</b></p><p>  dw_3.update()</p><p><b>  case 2</b></p

50、><p><b>  return</b></p><p>  end choose</p><p><b>  end if</b></p><p>  if dw_3.update()>0 then</p><p>  commit using sqlca;<

51、/p><p>  messagebox("提示","成功修改數(shù)據(jù)庫",information!)</p><p><b>  end if</b></p><p>  tab_1.tabpage_4.dw_4.settransobject(sqlca)</p><p>  tab_1.

52、tabpage_4.dw_4.retrieve()</p><p>  int ll_info</p><p>  if dw_4.deletedcount()>0 or dw_4.modifiedcount()>0 then</p><p>  ll_info=messagebox("提示","數(shù)據(jù)已經(jīng)改動,確認修改?&q

53、uot;,Information!,yesno!,2)</p><p>  choose case ll_info</p><p><b>  case 1</b></p><p>  dw_4.update()</p><p><b>  case 2</b></p><p&g

54、t;<b>  return</b></p><p>  end choose</p><p><b>  end if</b></p><p>  if dw_4.update()>0 then</p><p>  commit using sqlca;</p><p

55、>  messagebox("提示","成功修改數(shù)據(jù)庫",information!)</p><p><b>  end if</b></p><p>  5.3 普通用戶則進入用戶查詢模塊</p><p><b>  實現(xiàn)的程序代碼為:</b></p><

56、p>  if ddlb_1.text="" then</p><p>  messagebox("提示","請選擇要查詢的月份",Information!)</p><p><b>  else</b></p><p>  yuefen=ddlb_1.text</p>

57、<p>  dw_1.settransobject(sqlca)</p><p>  dw_1.retrieve(gonghao)</p><p>  dw_2.settransobject(sqlca)</p><p>  dw_2.retrieve(yuefen)</p><p>  dw_3.settransobject(

58、sqlca)</p><p>  dw_3.retrieve(gonghao,yuefen)</p><p><b>  end if</b></p><p><b>  參考文獻</b></p><p>  [1] 陳明. 軟件工程學教程[M].科技出版社,2002.</p><

59、;p>  [2] 薩師煊,王珊. 數(shù)據(jù)庫系統(tǒng)概論(第三版)[M] . 高等教育出版社,2000.</p><p>  [3]汪曉平,鐘軍主編.PowerBuilder 9.0 網(wǎng)絡開發(fā)技術(shù)[M].北京:人民郵電出版社,2003.12</p><p>  [4]王健南主編.PowerBuilder 9.0 數(shù)據(jù)庫管理項目精解[M].北京:航空工業(yè)出版社,2006.10.</p&g

60、t;<p>  [5]傅雅慧.戚紅軍.高寧軍主編.基于Web開發(fā)科研管理與服務信息系統(tǒng)[J].中華醫(yī)學科研管理雜志,2004,03:89-91.</p><p><b>  .</b></p><p><b>  總 結(jié)</b></p><p>  遇到的問題及解決方案</p><p

61、>  在進行了需求分析后就開始畫業(yè)務流程圖、數(shù)據(jù)流圖和E-R圖等,但是發(fā)現(xiàn)畫了很多次在后面的設計中總會有沒想到的部分,主要原因在于對整個系統(tǒng)不太熟悉,沒有系統(tǒng)的規(guī)劃,后來通過自頂向下的方法,一步一步的分析并畫出功能分析圖,然后才進行具體的其他設計工作。</p><p>  在建立數(shù)據(jù)庫的各基本表的過程中,總會出現(xiàn)錯誤,有語法錯誤,有變量同名錯誤,后來通過整體先進行邏輯結(jié)構(gòu)設計先確定各變量名,邊寫SQL語言邊

溫馨提示

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

最新文檔

評論

0/150

提交評論