大慶石油學院本科生畢業(yè)設計(論文)_第1頁
已閱讀1頁,還剩60頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  摘 要</b></p><p>  信息技術和網(wǎng)絡技術的迅猛發(fā)展,使人們工作的方式、獲取信息的途徑和學習的方法發(fā)生了巨大的變化。通過網(wǎng)絡、知識管理軟件,人們就可以方便快捷地查閱資料、學習到自己想要學習的知識,同時也可以把自己的學習經(jīng)驗和心得發(fā)送到網(wǎng)絡上實現(xiàn)資源共享。</p><p>  信息化知識管理就是運用技術工具和程序處理來數(shù)字化存儲

2、各個領域的知識和智慧,并通過網(wǎng)絡使得整個領域的知識和經(jīng)驗得到傳播、共享和訪問。油田地面工程設計理論數(shù)據(jù)庫管理系統(tǒng)是實現(xiàn)油田地面工程設計理論管理平臺,是一個具有知識庫管理能力和協(xié)同工作能力的軟件系統(tǒng),是實施知識管理的工具,它提供一種靈活的、可伸縮的石油地面工程設計理論知識管理方案,方便石油技術人員、研究人員、管理人員參考、查閱和更新。</p><p>  油田地面工程設計理論數(shù)據(jù)庫管理系統(tǒng)采用C++ Builder

3、作為前臺開發(fā)工具,采用關系數(shù)據(jù)庫SQL Server 2000作為后臺數(shù)據(jù)庫。結構化、模塊化的設計,便于系統(tǒng)以后的功能擴充。成型的系統(tǒng)具有簡潔、直觀、友好的用戶界面和較為全面的功能。</p><p>  關鍵詞:知識管理; 資源共享; 油田 ;集輸 ;地面工程</p><p><b>  Abstract</b></p><p>  The s

4、wift and violent development of information technology and network technology makes the way to obtain information and study method that people worked change enormously.Through the network, knowledge management software,

5、people can consult the materials, study the knowledge wanted to study by oneself conveniently and swiftly, and can send one’s study experiences and gains to network to realize resource-sharing at the same time.</p>

6、<p>  Information-based knowledge management is to use technological tools and procedures to deal with storing the digitization knowledge and intelligence of each field, and make the knowledge and experience of th

7、e whole field spread, shared and visiting through the network. Oil field assembling and supplying knowledge base management system is a platform to realize the management of oil field ground project design theory, it is

8、a system of software with managerial ability of the knowledge base and ab</p><p>  Oil field assembling and supplying knowledge base management system adopts C++ Builder as the front desk developing instrume

9、nt, adopts the relational database SQL Server 2000 as the backstage supporter database,. Structuring and modular design is convenient to expand the system function in the future. The forming system has succinct, ocular,

10、friendly user's interfaces and more comprehensive function.</p><p>  Key words:Information management; Resource-sharing; Oil field; assembling and supplying; ground project</p><p><b> 

11、 目 錄</b></p><p><b>  摘 要I</b></p><p>  AbstractII</p><p><b>  目 錄III</b></p><p><b>  第1章 概 述1</b></p><p>  1.

12、1 研究內容所屬領域及范圍1</p><p>  1.2 研究內容的理論意義及應用價值1</p><p>  1.3 國內外研究概況、水平2</p><p>  1.4 具體研究內容及重點解決問題2</p><p>  1.5 知識管理的概念2</p><p>  第2章 系統(tǒng)分析及相關技術介紹4</

13、p><p>  2.1 油田地面工程設計理論概述4</p><p>  2.2 預期達到的成果及學術價值4</p><p>  2.3 系統(tǒng)功能分析5</p><p>  2.4 Borland C++ Builder技術簡介5</p><p>  第3章 需求分析13</p><p> 

14、 3.1 分析方法13</p><p>  3.2 數(shù)據(jù)庫管理系統(tǒng)分析13</p><p>  3.3 系統(tǒng)可行性分析14</p><p>  第4章 系統(tǒng)的整體設計15</p><p>  4.1 系統(tǒng)結構設計15</p><p>  4.2 系統(tǒng)流程圖16</p><p>  4

15、.3 數(shù)據(jù)流程圖16</p><p>  第5章 系統(tǒng)的詳細設計18</p><p>  5.1 系統(tǒng)各界面簡介18</p><p>  5.2 文件調用格式分析22</p><p>  5.3 系統(tǒng)模塊分析23</p><p>  5.4 計算程序界面程序代碼簡介45</p><p&g

16、t;  第6章 系統(tǒng)的打包及測試51</p><p>  6.1 系統(tǒng)打包51</p><p>  6.2 系統(tǒng)測試51</p><p>  第7章 總結和展望53</p><p><b>  致 謝54</b></p><p><b>  參考文獻55</b>&

17、lt;/p><p><b>  概 述</b></p><p>  研究內容所屬領域及范圍</p><p>  本課題所研究的領域是油田地面工程設計的理論部分在數(shù)據(jù)庫中的實現(xiàn)與應用。主要將油田地面工程設計的理論部分的紙本文件電子化建立數(shù)據(jù)庫,通過先進的計算機技術,實現(xiàn)油田地面工程設計理論部分在油田地面工程設計中的方便應用,以利于不同學科、不同地域間

18、的設計人員便利的應用、查找有關地面工程設計理論方面的知識。</p><p>  研究內容的理論意義及應用價值</p><p>  石油地面工程設計理論是中國石油天然氣總公司編的一套龐大的技術理論,共分成七冊,每一冊都是圖文并貌的一套專業(yè)理論,內容豐富、詳實,自然編輯成書是一本厚厚的理論書籍,這樣龐大的理論使從事油、氣田地面工程和長輸管道工程設計和技術管理的人員使用起來非常不方便,而且非常不

19、利于知識理論的及時更新。</p><p>  通過一個油田集輸知識庫管理系統(tǒng),將石油地面工程設計理論的紙本文件電子化,再借助信息和網(wǎng)絡技術使之得到傳播、共享和訪問,方便石油技術人員、研究人員和管理人員學習、參考、查閱以及必要的理論更新;同時通過這個油田集輸知識庫管理系統(tǒng),實現(xiàn)對石油地面工程設計理論的知識管理,石油企業(yè)實現(xiàn)了知識的共享,能夠運用集體的智慧提高企業(yè)的應變和創(chuàng)新能力,使企業(yè)能夠對外部需求做出快速反應,并

20、利用所掌握的知識資源預測外部市場的發(fā)展方向及其變化,使石油企業(yè)在知識經(jīng)濟時代能夠敏捷地利用知識提高企業(yè)的競爭力。大慶油田以戰(zhàn)略性的眼光,不惜投入,著手完善的知識管理體系的開發(fā),展示了企業(yè)為迎接知識經(jīng)濟的到來而采取的發(fā)展戰(zhàn)略,從而為企業(yè)的競爭和發(fā)展注入了新的活力與動力,這將有利于以下十個方面的知識管理:</p><p> ?。?)有利于對知識和最佳業(yè)務經(jīng)驗的共享;</p><p> ?。?)

21、有利于對知識共享責任的宣傳;</p><p> ?。?)有利于積累和利用過去的經(jīng)驗;</p><p>  (4)有利于將知識融入產品、服務和生產過程;</p><p>  (5)有利于將知識作為產品進行生產;</p><p> ?。?)有利于驅動以創(chuàng)新為目的的知識生產;</p><p> ?。?)有利于建立專家網(wǎng)絡;&

22、lt;/p><p> ?。?)有利于建立和挖掘石油領域的知識庫;</p><p> ?。?)有利于理解和計量知識的價值;</p><p> ?。?0)有利于利用知識資產。</p><p>  國內外研究概況、水平</p><p>  大慶油田建設設計研究院:建立了工程設計標準數(shù)據(jù)庫,其在己建立部分國內標準(約9000多個標

23、準)目錄庫的基礎上,建立國外標準數(shù)據(jù)庫,為設計、科研人員提供工程設計、科研標準規(guī)范檢索查詢服務。</p><p>  勝利油田勝利工程設計咨詢有限責任公司將美國Intergraph公司引進的大型三維設計軟件包工廠設計軟件(PDS)進行二次開發(fā),建立適合我國工程設計需要的圖形庫和尺寸庫,并進行必要的漢化工作。針對石油工業(yè)的應用需要,圍繞數(shù)據(jù)庫、圖形庫、文檔報告、圖紙漢化、標注規(guī)范等方面做了大量的開發(fā)工作。</

24、p><p>  具體研究內容及重點解決問題</p><p><b>  具體研究內容</b></p><p> ?。?)提出油田地面工程設計理論數(shù)據(jù)庫系統(tǒng)的工作模式。</p><p> ?。?)通過對工作模式的分析確定該系統(tǒng)的組織結構、運行環(huán)境的總體框架。</p><p> ?。?)建立油田地面工程設

25、計理論庫,編制數(shù)據(jù)庫軟件,研究開發(fā)數(shù)據(jù)庫輸入、輸出方法與實現(xiàn)技術,研究開發(fā)庫的查詢方法與實現(xiàn)技術。</p><p> ?。?)實際測試該系統(tǒng)的理論和技術的可實用性及可靠性。</p><p><b>  重點解決的問題</b></p><p> ?。?)油氣田地面工程設計理論的分類、整理。</p><p> ?。?)建立油

26、田地面工程設計理論的理論庫。</p><p>  (3)油田地面工程設計理論庫的輸入與輸出、查詢及維護技術研究。</p><p><b>  知識管理的概念</b></p><p>  知識管理就是運用技術工具和程序處理來數(shù)字化存儲各個領域的知識和智慧,并通過網(wǎng)絡使得整個領域的知識和經(jīng)驗得到傳播、共享和訪問。知識管理能將過去的傳統(tǒng)紙本文件一并電

27、子化,并對其進行統(tǒng)一集中管理。知識管理能在知識經(jīng)濟競爭如此激烈的今天,將某一領域寶貴的知識經(jīng)驗快速的累積、分類、管理與傳承,確保知識能適時提供給需要的人,對于重要知識只提供給被授權的人使用,確保知識傳承中,兼具保密性與安全性。涓涓細流,匯成滾滾江流,知識管理,就是鋪設和疏通,匯聚知識的“河道”。</p><p>  系統(tǒng)分析及相關技術介紹</p><p>  油田地面工程設計理論概述<

28、;/p><p>  油田地面工程設計理論主要內容包括設計管理、各專業(yè)設計技術和有關數(shù)據(jù)以及環(huán)保、工程經(jīng)濟、采辦技術要求等。本理論共七冊:</p><p>  第一冊 工程設計管理;</p><p>  第二冊 油田地面工程設計;</p><p>  第三冊 氣田地面工程設計;</p><p>  

29、第四冊 原油長輸管道工程設計;</p><p>  第五冊 天然氣長輸管道工程設計;</p><p>  第六冊 通用工程設計(上);</p><p>  第七冊 通用工程設計(下)。</p><p>  每一冊又按照章、節(jié)及主題獨立成為一套理論,其中圖例、表格、公式詳細生動,可供石油技術人員、管理人員參考使用

30、。</p><p>  在本次畢業(yè)設計中我們以第二冊作為素材進行數(shù)據(jù)庫的編制,通過材料分析和整理我決定將本書的理論部分分為油氣集輸、油田注水、油氣處理和含油污水處理四大部分進行編制。在這四大部分的編制遵循書的章、節(jié)和大標題安排,由此及彼的一步一步實現(xiàn)信息的瀏覽和查詢。</p><p>  預期達到的成果及學術價值</p><p><b>  預期達到的成果

31、</b></p><p> ?。?)開發(fā)出適合油氣田地面工程設計領域應用的油氣田地面工程理論數(shù)據(jù)庫。</p><p> ?。?)編制出油田地面工程設計理論數(shù)據(jù)庫的客戶軟件,基本實現(xiàn)油氣田地面工程理論的輸入與輸出、查詢及維護等功能。</p><p><b>  具體的學術價值</b></p><p> ?。?)

32、填補我國在油氣田地面工程設計理論數(shù)據(jù)庫領域研究的空白。</p><p> ?。?)通過該課題的研究,將開創(chuàng)油田地面工程設計理論數(shù)據(jù)庫在油田地面工程系統(tǒng)設計中應用的新領域,同時促進油田地面工程設計理論的新發(fā)展。</p><p><b>  系統(tǒng)功能分析</b></p><p>  這里我建立的菜單項有關于油氣田地面工程設計中的一些計算程序、具體理

33、論、公式、示圖、表格、及幫助等。其中具體理論、公式、示圖、表格直接調用的是 Word文檔,其他各項均是采用Inprise(原Borland)公司推出的C++ Builder 5.0所提供的各種組件來實現(xiàn)的,尤其是在油氣田地面工程設計中的一些計算程序編制過程中本著遵循C++ Builder編程理論的原則基礎上,適當?shù)膮⒖剂薈語言的編程技巧,很好的實現(xiàn)了設計過程中有關理論知識的計算,能使設計人員快捷方便的得到所需要的理論數(shù)據(jù),使設計順利快速

34、的進行,縮短了設計時間,提高了工作效率。</p><p>  Borland C++ Builder技術簡介</p><p>  Borland C++ Builder開發(fā)工具簡介</p><p>  Borland C++ Builder是Inprise(原Borland)公司推出的基于C++ 語言的快速應用程序開發(fā)(Rapid Application Devel

35、opment,RAD)工具,它是最先進的開發(fā)應用程序的組件思想和面向對象的高效語言C++ 融合的產物。C++ Builder充分利用了已經(jīng)發(fā)展成熟的Delphi 的可視化組件庫(Visual Component Library,VCL),吸收了Borland C++ 這個優(yōu)秀編譯器的諸多優(yōu)點。C++ Builder 結合了先進的基于組件的程序設計技術,成熟的可視化組件庫和優(yōu)秀編譯器,調試器。發(fā)展到6.0版本,C++ Builder 已經(jīng)

36、成為一個非常成熟的可視化應用程序開發(fā)工具,功能強大而且效率高。</p><p>  Borland C++ Bilder具有以下的特色:</p><p>  (1)C++ Builder是高性能的C++開發(fā)工具。</p><p>  C++ Builder是基于C++ 的,它具有高速的編譯、連接和執(zhí)行速度。同時,C++ Builder具有雙編譯器引擎,不僅可以編譯C

37、/C++ 程序,還能編譯Object Pascal語言程序。</p><p> ?。?)C++Builder是優(yōu)秀的可視化應用程序開發(fā)工具。</p><p>  C++ Builder是一種完善的可視化應用程序開發(fā)工具,使程序員從繁重的代碼編寫中解放出來,使他們能將注意力重點放在程序的設計上,而不是簡單的重復的勞動中。同時,它提供的完全可視的程序界面開發(fā)工具,從而使程序員對開發(fā)工具的學習周

38、期大大縮短。</p><p> ?。?)C++Builder具有強大的數(shù)據(jù)庫應用程序開發(fā)功能。</p><p>  C++ Builder 提供了強大的數(shù)據(jù)庫處理功能,它使的程序員不用寫一行代碼就能開發(fā)出功能強大的數(shù)據(jù)庫應用程序,這些主要依賴于C++ Builder眾多的數(shù)據(jù)庫感知控件和底層的BDE數(shù)據(jù)庫引擎。C++ Builder除了支持MicroSoft的ADO(Active Data

39、 Object)數(shù)據(jù)庫連接技術,還提供了一種自己開發(fā)的成熟的數(shù)據(jù)庫連接技術——BDE(Borland Database Engine)數(shù)據(jù)庫引擎。</p><p> ?。?)C++ Builder具有強大的網(wǎng)絡編程能力。</p><p>  C++ Builder具有眾多的Internet應用程序開發(fā)控件,如WebBroker,CppWebBroswer,WinSocks等,它們基本含蓋了

40、Internet應用的全部功能,利用它們程序員可以方便地建立自己地Internet應用程序。</p><p>  Borland C++ Builder在現(xiàn)行數(shù)據(jù)庫開發(fā)工具中所具有的優(yōu)點</p><p>  隨著計算機技術不斷發(fā)展,各種數(shù)據(jù)庫編程工具也隨著發(fā)展,使當今的大多數(shù)程序開發(fā)人員可以擺脫枯燥無味的用計算機指令或匯編語言開發(fā)軟件,而是利用一系列高效的、具有良好可視化的編程工具去開發(fā)各

41、種數(shù)據(jù)庫軟件,從而達到事半功倍的效果,但是現(xiàn)在市面上的數(shù)據(jù)庫編程工具門類眾多,良莠不齊,比如VB,PB,VC,Java,Delphi,C++ Builder等,現(xiàn)在做簡短比較:</p><p>  Visual Basic是以Basic語言作為其基本語言的一種可視化編程工具。VB作為一種較早出現(xiàn)的開發(fā)程序以其容易學習,開發(fā)效率較高,具有完善的幫助系統(tǒng)等優(yōu)點,但是由于VB不具備跨平臺特性,而且它對組件技術的支持僅基

42、于COM和ActiveX,同時VB在進行系統(tǒng)底層開發(fā)的時候函數(shù)調用很不方便,且不能嵌套匯編;而且面向對象的特性差。</p><p>  Power Builder是開發(fā)MIS系統(tǒng)和各類數(shù)據(jù)庫跨平臺的首選,使用簡單,容易學習,容易掌握,在代碼執(zhí)行效率上也有相當出色的表現(xiàn),但是它在系統(tǒng)底層開發(fā)中犯了跟VB一樣的錯誤,函數(shù)調用很不方便,且不能嵌套匯編;而且面向對象特向也不是太好。</p><p>

43、;  Visual C++ 是基于MFC庫的可視化的開發(fā)工具,從總體上說它是一個功能強大但是不便使用的一種工具,它雖然是使用C++作為基本語言,但是它在面向對象特性上卻不夠好,同時它在組件支持上也不太好,而且最大的問題是它的開發(fā)效率也不高。</p><p>  Java編程工具目前比較出名的是Borland出的JBuilder和IBM出的Visual Age for Java,兩種工具都有一定數(shù)量的是用人群,但是

44、在系統(tǒng)底層開發(fā)和多媒體開發(fā)中卻表現(xiàn)得并不讓人十分滿意。</p><p>  Delphi是基于VCL庫的可視化開發(fā)工具,它使用了面向對象的觀點對關系型數(shù)據(jù)庫的概念進行了封裝,簡化了編程,同時可以和面向對象的開發(fā)方式結合起來,能夠適用于不同程度的數(shù)據(jù)管理需要,但Delphi具有語言不夠廣泛,開發(fā)系統(tǒng)軟件功能不足兩個比較大的缺點。</p><p>  C++ Builder也是基于VCL庫的可

45、視化開發(fā)工具,它在組件技術的支持、數(shù)據(jù)庫支持、系統(tǒng)底層開發(fā)支持、網(wǎng)絡開發(fā)支持、面向對象特性等各方面都有相當不錯的表現(xiàn),并且學習使用較為容易,充分提現(xiàn)了所見即所得的可視化開發(fā)方法,開發(fā)效率高,代碼執(zhí)行效率高。</p><p>  通過上述比較,在此次畢業(yè)設計的數(shù)據(jù)庫編制中我選擇了C++ Builder作為開發(fā)工具,作為一種可視化的數(shù)據(jù)庫開發(fā)工具,它為設計者提供了一系列組件,充分實現(xiàn)了所見即所得的可視化開發(fā)方法,提高

46、了開發(fā)效率和代碼執(zhí)行效率。</p><p>  Borland C++ Builder數(shù)據(jù)庫體系</p><p>  目前的數(shù)據(jù)庫開發(fā)按照形式可分為兩類。一種是基于文件型數(shù)據(jù)庫的桌面數(shù)據(jù)庫應用開發(fā),使用的數(shù)據(jù)格式一般為Dbase,Paradox或Access等,這些數(shù)據(jù)庫存放在本地或網(wǎng)絡的某個目錄下,應用程序打開數(shù)據(jù)庫,就是通過內部的數(shù)據(jù)庫驅動程序直接操作這個文件,這類數(shù)據(jù)庫一般用于用戶少

47、,數(shù)據(jù)量小,空間范圍小的應用。另外一類是基于數(shù)據(jù)庫服務器的應用系統(tǒng)開發(fā),這些數(shù)據(jù)庫服務器都支持C/S的數(shù)據(jù)操作模式,客戶程序使用SQL語言打開數(shù)據(jù)庫,通過網(wǎng)絡傳送SQL命令給數(shù)據(jù)庫服務器,數(shù)據(jù)庫服務器響應之后,將操作結果回傳給客戶程序。這種模式的數(shù)據(jù)庫開發(fā)稱之為客戶/服務器開發(fā)方式,解決了數(shù)據(jù)量大情況下網(wǎng)絡傳送的瓶頸問題,具有很多優(yōu)點,是目前流行的方式。不管哪種方式,C++ Builder總能使用最好的形式來支持。</p>

48、<p>  對于一般的桌面數(shù)據(jù)庫開發(fā),譬如使用Dbase數(shù)據(jù)庫,C++ Builder通過內置的數(shù)據(jù)庫驅動程序,很好的支持Dbase各個版本的數(shù)據(jù)庫格式,而對于Access來說,C++ Builder可以通過ODBC的形式訪問。C++ Builder提供一個最佳的“數(shù)據(jù)庫開發(fā)工具”,它采用以組件為導向的可視化雙向數(shù)據(jù)庫,提高最高生產力的數(shù)據(jù)感知(Data Aware)組件和數(shù)據(jù)存取組件以方便對數(shù)據(jù)庫內的數(shù)據(jù)進行存儲、計算以及

49、處理等維護作業(yè),目前C++ Builder可以存取的數(shù)據(jù)庫有Oracle、Informix、Microsoft SQL Server、Sybase SQL Server、IBM DB/2 Universal Server、dBASE for Windows、Paradox及InterBase等企業(yè)關系型數(shù)據(jù)庫管理系統(tǒng)。C++ Builder亦提供最好的“分布式應用系統(tǒng)開發(fā)工具”,提供了25種以上可視化數(shù)據(jù)庫組件,能使使用者快速開發(fā)出Cl

50、ient/Server、Multi-Tier與WWW應用系統(tǒng)。</p><p>  BDE(Borland Database Engine)是數(shù)據(jù)庫驅動程序,也可以成為數(shù)據(jù)庫引擎。通過BDE,應用程序可以訪問內置的dBase、Paradox、ASCII等數(shù)據(jù)庫,也可以通過SQL Links訪問數(shù)據(jù)庫服務器,還可以通過ODBC訪問數(shù)據(jù)庫。C++ Builder工具和數(shù)據(jù)庫應用程序與BDE和數(shù)據(jù)源之間的關系如圖2.1

51、。</p><p>  圖2.1 C++ Builder的數(shù)據(jù)庫體系</p><p>  如圖2.1可以看到,C++ Builder數(shù)據(jù)庫應用程序可以存取Paradox、dBase、Local Interbase及ODBC數(shù)據(jù)源等多種桌面型數(shù)據(jù)庫,C++ Builder的客戶/服務器應用程序還可以存取多種遠端數(shù)據(jù)庫服務器,如Oracle、Sybase,、MS SQL Server、In

52、formix、Interbase及ODBC數(shù)據(jù)源等。</p><p>  Borland C++ Builder數(shù)據(jù)庫應用程序結構</p><p>  C++ Builder能處理各種數(shù)據(jù)庫文件,其處理數(shù)據(jù)庫的機制如圖2.2所示。</p><p>  圖2.2 數(shù)據(jù)庫系統(tǒng)機制</p><p>  由圖可見,使用C++ Builder數(shù)據(jù)庫

53、應用程序需要先安裝BDE接口(注意:圖2.2并不適用于使用ADO控件編寫的數(shù)據(jù)庫。使用ADO控件編寫的應用程序可以繞開BDE)。</p><p>  C++ Builder數(shù)據(jù)庫應用程序基本上由兩部分組成,DataAccess(數(shù)據(jù)訪問)控件和DataControl(數(shù)據(jù)控制)控件。DataAccess控件負責和BDE進行數(shù)據(jù)交換,并為DataControl控件提供數(shù)據(jù),將在DataControl控件中被修改的數(shù)

54、據(jù)經(jīng)BDE傳送到數(shù)據(jù)庫文件中,其中和BDE打交道(通過TDatabase)的控件是TDataSet控件。TDataSet控件包括TTable、TQuery、TStoreProc等,每一個TDataSet控件都與一個數(shù)據(jù)庫文件連接,并且為TDataSource控件提供數(shù)據(jù),而每一個每一個TDataSource控件也應該指定一個TDataSet控件。</p><p>  TDataSource控件負責從TDataSe

55、t控件中接收數(shù)據(jù)并提供給TDataControl控件把被修改的數(shù)據(jù)經(jīng)TDataSource控件傳給BDE。所有的DataAccess控件均為運行時不可見控件,它們隱藏在用戶界面后面,而由DataControl控件顯示其數(shù)據(jù),并提供瀏覽、修改數(shù)據(jù)的工具,其性能與TDBGrid和TDBNavigator控件的性能相同。</p><p>  C++ Builder數(shù)據(jù)庫應用程序通過數(shù)據(jù)存取構件(BDE構件)對數(shù)據(jù)庫進行

56、訪問,通過可視的數(shù)據(jù)控制(Data Control和Data Access)構件將數(shù)據(jù)呈現(xiàn)給用戶,并與用戶進行交互訪問。C++ Builder數(shù)據(jù)庫應用程序的結構如圖2.3所示。</p><p><b>  Table</b></p><p><b>  DBText</b></p><p>  DBNavigator&l

57、t;/p><p><b>  DBlistBox</b></p><p><b>  DBEdit</b></p><p>  可視化控制 數(shù)據(jù)存取</p><p>  組件(顯示) 組件(擷?。?lt;/p><p>  圖2.3 C++

58、 Builder數(shù)據(jù)庫應用程序結構圖</p><p>  在上圖中,可以由右往左來看數(shù)據(jù)庫(Database)的使用與控制的原理,右側的數(shù)據(jù)庫是由數(shù)據(jù)庫引擎(Borland Database Engine:BDE)取數(shù)據(jù),BDE的左側是“數(shù)據(jù)存取組件”(Data Access Component)包括:Table、Query與StorProc存取組件,存取組件所擷取的數(shù)據(jù)是經(jīng)由DataSource組件與可視化控制

59、組件(Visual Control Component)聯(lián)系?!翱梢暬刂啤苯M件主要的功能是將數(shù)據(jù)顯示(Display)出來,用戶才能看到擷取的各種數(shù)據(jù),這些組件包括有:DBGrid、DBText、DBNavigator等來作為用戶的數(shù)據(jù)顯示接口(User Interface)。我們了解了上面的組件間彼此的關系,相信對數(shù)據(jù)庫存儲原理以及組件的屬性設置必然會有更深入的認識。從這個圖中我們還可以看到,整個數(shù)據(jù)庫應用程序的訪問可以分為三級:&

60、lt;/p><p>  (1) C++ Builder應用程序通過BDE訪問數(shù)據(jù)源,如Sybase數(shù)據(jù)庫或SQL Server數(shù)據(jù)庫,為了能對這些數(shù)據(jù)進行訪問,必須事先安裝相應的驅動程序,并對BDE進行配置。</p><p>  (2)從DataSet繼承來的構件,如Table、Query與BDE通信,提供存取數(shù)據(jù)的能力。這些構件被安排在Data Access構件頁,不管使用什么樣的數(shù)據(jù)格式,

61、只要在BDE中正確地配置數(shù)據(jù)庫,DataSet構件都能正確存取。</p><p>  (3)構件DataSource充當一個導體,負責將Table(Query和StoreProc)的數(shù)據(jù)傳送給數(shù)據(jù)控制(Data Control)的構件,數(shù)據(jù)控制的構件從DataSource處存取數(shù)據(jù),不管使用Table還是Query,數(shù)據(jù)控制構件都能按照字段訪問到數(shù)據(jù)。數(shù)據(jù)控制的構件包括Table、DBText、DBNavigat

62、or、DBListBox及DBEdit等。</p><p>  Borland C++ Builder數(shù)據(jù)庫控件介紹</p><p>  DataAccess和DataControl控件選項卡上的控件是用來設計數(shù)據(jù)庫應用程序的。其中DataAccess控件選項卡上的組件是數(shù)據(jù)庫應用程序用來與數(shù)據(jù)庫建立連接的,它們也稱為數(shù)據(jù)訪問控件。而DataControl 控件選項卡上的控件是用來與用戶交

63、互的,它們也稱為數(shù)據(jù)感知控件。主要有:表(Table)、查詢(Query)、數(shù)據(jù)源(DataSource)、數(shù)據(jù)庫導航器(DBNavigator)、數(shù)據(jù)表格(DBGrid)、數(shù)據(jù)庫編輯框(DBEdit)、數(shù)據(jù)庫靜態(tài)文本框(DBText)、數(shù)據(jù)庫列表框(DBListBox)等。</p><p>  DataAccess控件</p><p>  DataAccess控件負責在文件中存取數(shù)據(jù),常

64、用的DataAccess控件有TTable、TQuery和TDataSource三個。其中TTable控件與TQuery控件均屬于TDataSet控件。TTable控件以表格形式存取數(shù)據(jù)庫文件中的各個數(shù)據(jù),在使用TTable控件時必須用DatabaseName和TableName兩個屬性將TTable控件和一個數(shù)據(jù)庫文件相連。TQuery控件并不直接指定某個數(shù)據(jù)庫文件,而是用SQL屬性和數(shù)據(jù)庫相連,所以沒有TableName屬性。但是T

65、Query控件增加了DataSource屬性,用于指定某個TDataSource控件。TQuery控件以SQL表達式和數(shù)據(jù)庫連接,所以在某種意義上比TTable控件要靈活。在數(shù)據(jù)庫編程中,TTable控件與TQuery控件是兩個最重要的控件。指定完TDataSet控件以后,還需要TDataSource控件將其與DataControl控件相連。TDataSource控件相對比較簡單,它的主要屬性如表2.1所示。</p>&l

66、t;p>  表2.1 TDataSource控件的屬性</p><p>  一般TDataSet控件總會處于某種狀態(tài),在各個狀態(tài)間相互轉換時,將觸發(fā)一些事件,如OnAfterEdit、OnBeforeEdit等,利用這些事件可以判斷操作情況,以期做出下一部步處理。表2.2是TDataSet控件的幾種可能狀態(tài)。</p><p>  表2.2 TDataSet控件的屬性</

67、p><p>  DataControl控件</p><p>  DataControl控件用于顯示和修改文件中的數(shù)據(jù),通常稱為數(shù)據(jù)感知控件,如TDBGrid與TDBNavigator控件,除此之外,C++ Builder還提供了大量其他類型的DataControl控件,如TDBEdit、TDBMemo與TDBListBox等等。</p><p>  DataContro

68、l控件很多,值得注意的是所有的DataControl控件均有一個DataSource屬性,用于指定一個TDataSource控件。有一些控件TDBEdit、TDBMemo等還有一個DataField屬性用于指定在該控件中將顯示數(shù)據(jù)文件中的那一個字段的值。</p><p>  DataControl控件還有一個常用的屬性為ReadOnly,將這個屬性設置為true時,則只能通過控件瀏覽數(shù)據(jù)內容而不能修改它們。<

69、;/p><p><b>  需求分析</b></p><p>  在這一章我們將根據(jù)用戶的需求,勾勒出系統(tǒng)的概貌,并且確定它必須具有的功能和性能。該階段不是確定系統(tǒng)怎樣完成它的工作,而僅僅是確定系統(tǒng)必須完成哪些工作,也就是對目標系統(tǒng)提出完整、準確、清晰、具體的要求。并且要綜合用戶的意見、建議以及現(xiàn)有的技術,結合實際情況,分析系統(tǒng)的可行性。</p><p

70、><b>  分析方法</b></p><p>  對于分析方法的選擇,系統(tǒng)分析員一般選用自上向下逐步求精的分析方法。一般是通過向用戶了解情況,確定其主要的需求,然后確定系統(tǒng)的主要功能,然后就細節(jié)問題和用戶探討,最終確定系統(tǒng)的要實現(xiàn)的功能,并因此形成系統(tǒng)的數(shù)據(jù)流程圖。需求分析階段的工作是開發(fā)軟件系統(tǒng)的重要基礎。軟件系統(tǒng)中15%的錯誤起源于錯誤的需求分析。因此,用相應的分析方法對目標系統(tǒng)

71、提出一組要求之后,必須要嚴格驗證這些需求的正確性。一般來說,應該從下述四個方面驗證:①一致性:所有的需求必須是一致的。任何一條需求不能和其它需求相互矛盾。②完整性:需求必須是完整的,規(guī)格說明書應該包括用戶需要的每一個功能或性能。③現(xiàn)實性:指定的需求應該是用現(xiàn)有的硬件技術和軟件技術基本上可以實現(xiàn)的。對硬件技術的進步可以做一些預測,對軟件技術的進步則很難做出預測的,只能從現(xiàn)有水平出發(fā),判斷需求的現(xiàn)實性。④有效性:必須證明需求是正確有效的,確

72、定能夠解決客戶方面所提出的問題。</p><p><b>  數(shù)據(jù)庫管理系統(tǒng)分析</b></p><p>  數(shù)據(jù)庫管理系統(tǒng)即“油田地面工程設計理論數(shù)據(jù)庫管理系統(tǒng)”采用的是自上而下逐步求精的分析方法。在通過和機械系的常玉連老師的交流和探討對系統(tǒng)要實現(xiàn)的主要功能取得一致性,并對系統(tǒng)的需求進行以上所述四個方面的驗證后,得出了“油田地面工程設計理論數(shù)據(jù)庫管理系統(tǒng)”所應該具有

73、的功能,現(xiàn)將其詳細描述如下:</p><p> ?。?)石油地面工程設計理論知識管理</p><p>  要求能夠對石油地面工程設計理論知識按章、節(jié)、節(jié)內主標題進行瀏覽、添加、修改、刪除操作。</p><p><b> ?。?)安全信息管理</b></p><p>  要求不同權限的用戶具有不同的操作權利。</p&

74、gt;<p><b>  (3)數(shù)據(jù)庫管理</b></p><p>  要求能夠及時對數(shù)據(jù)庫進行備份,必要是能夠對數(shù)據(jù)庫進行還原。</p><p>  以上只是針對用戶的需求對系統(tǒng)功能的整體描述。這個整體描述基本上實現(xiàn)了用戶所要求的全部功能。具體各個功能的描述將在以后的章節(jié)中給出。</p><p><b>  系統(tǒng)可行性

75、分析</b></p><p>  可行性研究主要包括技術可行性、經(jīng)濟可行性和操作、發(fā)布可行性三個方面。其目的就是用最小的代價在盡可能短的時間內確定問題能否解決,若有可行性的方案則確立方案,否則就取消該功能,從而確定系統(tǒng)的主要功能與相應的解決方案。</p><p> ?。?)技術可行性:因為該系統(tǒng)是要求采用客戶方式在單機環(huán)境下實現(xiàn)對數(shù)據(jù)庫內容的瀏覽、查詢、添加、刪除等操作,而本系

76、統(tǒng)就是采用C++ Builder作為前臺面向對象設計工具、SQL Server作為后端數(shù)據(jù)庫開發(fā)系統(tǒng),它不僅能保證數(shù)據(jù)的安全性,還能夠滿足不同用戶的使用要求。它使用SQL作為數(shù)據(jù)庫操作的語言,支持服務器存儲過程調用,有效地解決了硬件資源配置的差異性,使得客戶機也能享受服務器的硬件運算能力。C++ Builder是一種強大的面向對象設計工具,它可以先在客戶機上進行桌面方式的開發(fā),然后移植到SQL數(shù)據(jù)庫服務器上來,而且C++ Builder

77、提供了一個完備的SQL數(shù)據(jù)庫服務器訪問方式。所以技術上是可行的。</p><p>  (2)經(jīng)濟可行性:本系統(tǒng)的開發(fā)是在微機上進行的,其測試工作也可以在單機環(huán)境下來進行。其資料可以從常玉連老師處獲得,整個過程不需要大量的人力、物力、技術、資金的投入。當該系統(tǒng)正式投入使用后,能給用戶帶來極大的方便,而且為商業(yè)企業(yè)帶來的經(jīng)濟效益將是無法估量的。所以經(jīng)濟上是可行的。</p><p> ?。?)操

78、作、發(fā)布可行性:由于本系統(tǒng)安裝了C++ Builder5.0、SQL Server2000企業(yè)版,所以只要打開此應用程序,輸入正確的油氣田地面工程理論設計管理系統(tǒng)SQL Server2000數(shù)據(jù)庫服務器名和數(shù)據(jù)庫名,配置和建立完與數(shù)據(jù)庫的連接后,就能正常運行此程序,進入本系統(tǒng),按照不同的權限可以進行相應的操作,簡單方便。系統(tǒng)開發(fā)完成后,可以作為油田企業(yè)一個專門軟件在企業(yè)內部應用和發(fā)布。所以操作和發(fā)布應用上,該系統(tǒng)是可行的。</p&

79、gt;<p>  綜合以上各方面的分析,我認為油氣田地面工程理論數(shù)據(jù)庫系統(tǒng)的所有功能是完全可以實現(xiàn)的。</p><p><b>  系統(tǒng)的整體設計</b></p><p>  在需求分析、可行性研究都確定下來以后,接下來的工作由總體設計來完成??傮w設計又稱為初步設計。它的主要任務是設計軟件的結構,也就是要確定整個系統(tǒng)中每個程序是由哪些模塊組成的,以及這些

80、模塊相互間的關系。</p><p><b>  系統(tǒng)結構設計</b></p><p>  結構圖是進行軟件結構設計的一個有力工具。它是由模塊組成的層次系統(tǒng)。功能的分解導致數(shù)據(jù)流程圖的進一步細化。下面跟據(jù)本系統(tǒng)的具體功能分析它的結構?!坝吞锏孛婀こ淘O計理論數(shù)據(jù)庫系統(tǒng)”的系統(tǒng)的結構如圖4.1所示。</p><p>  圖4.1 “油田地面工程設

81、計理論數(shù)據(jù)庫系統(tǒng)”系統(tǒng)結構圖</p><p><b>  系統(tǒng)流程圖</b></p><p>  本系統(tǒng)的整個流程為:運行應用程序配置好SQL Server 2000數(shù)據(jù)庫服務器和油氣田地面工程設計理論數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫名后,普通用戶、管理員分別由觸發(fā)登錄事務開始進入系統(tǒng),通過程序處理階段,其中包括一系列的動作:與數(shù)據(jù)庫服務器以及數(shù)據(jù)庫的連接、對數(shù)據(jù)庫中的數(shù)據(jù)更新,進入

82、用戶實用階段,在這里普通用戶可以完成各種系統(tǒng)操作:普通客戶可以進行登錄、瀏覽、查詢操作;管理員可以登錄、瀏覽、添加、修改、刪除、修改數(shù)據(jù)庫登陸密碼、注冊新的數(shù)據(jù)庫登陸用戶名等操作。當各個操作結束后,即可觸發(fā)關閉系統(tǒng)事件,結束各自的事務。圖4.2為本系統(tǒng)的流程。</p><p>  圖4.2 “油田地面工程設計理論數(shù)據(jù)庫系統(tǒng)”系統(tǒng)流程圖</p><p><b>  數(shù)據(jù)流程圖&

83、lt;/b></p><p>  在仔細分析和調查油氣田地面工程設計理論數(shù)據(jù)庫知識庫管理過程的基礎上,得到了油氣田地面工程設計理論數(shù)據(jù)庫系統(tǒng)普通用戶系統(tǒng)和管理員系統(tǒng)的數(shù)據(jù)流程圖,分別如圖4.3、圖4.4所示。</p><p>  D1 安全管理信息表</p><p>  圖4.3 普通用戶系統(tǒng)數(shù)據(jù)流程圖</p><p>  管理員

84、系統(tǒng)作為后臺數(shù)據(jù)庫管理部分,它主要負責普通用戶信息、知識庫信息的管理,包括對知識庫信息、用戶信息的瀏覽、添加、刪除、修改操作,而對于普通用戶只能對知識庫進行瀏覽操作。</p><p>  D1 message</p><p>  圖4.4 管理員系統(tǒng)數(shù)據(jù)流程圖</p><p><b>  系統(tǒng)的詳細設計</

85、b></p><p>  有了前面兩章需求分析和總體設計的基礎,我們在這一章的詳細設計中就可以確定怎樣具體實現(xiàn)所要求的目標系統(tǒng)了,即寫出對系統(tǒng)的精確描述。此階段要設計出程序的“藍圖”,開發(fā)人員根據(jù)這個藍圖寫出實際的程序代碼。因此,詳細設計的結果基本上決定了最終程序代碼的質量。除了應該保證程序的可靠性之外,也應保證編寫的程序可讀性好、易于理解、測試、修改和維護,這一點是詳細設計的最重要的目標與任務。</

86、p><p><b>  系統(tǒng)各界面簡介</b></p><p><b>  數(shù)據(jù)庫啟動界面介紹</b></p><p>  圖5.1 數(shù)據(jù)庫啟動界面圖</p><p>  圖5.1為油氣田地面工程設計理論數(shù)據(jù)庫系統(tǒng)的啟動界面圖,該圖中的藝術字體是利用Word文檔中的藝術字命令書寫的,然后使用了附件中

87、的畫圖命令將其轉化成圖片文件(JPG文件),最后使用C++ Builder附加控件模板(Additional)中的Image控件找到處理好的圖片存放路徑,從而將其該藝術字體插入到了數(shù)據(jù)庫系統(tǒng)的啟動界面中。本數(shù)據(jù)庫系統(tǒng)中所出現(xiàn)的藝術字體均采用此種方式來實現(xiàn)的,本文如再次遇到時將不再重復敘述。該啟動界面圖中各個按鈕的功能介紹如下:</p><p>  信息查詢:通過該按鈕實現(xiàn)用戶和管理員登陸,從而達到普通用戶瀏覽和查

88、詢該數(shù)據(jù)庫德操作,管理員實現(xiàn)對知識庫信息、用戶信息的瀏覽、添加、刪除、修改等操作。</p><p>  使用幫助:該按鈕主要面向對象是初次使用該數(shù)據(jù)庫系統(tǒng)的用戶,主要通過該按鈕鏈接一個新的界面,此界面主要介紹該數(shù)據(jù)庫系統(tǒng)的主要內容、編制原理、查詢方法等。</p><p>  數(shù)據(jù)維護:該按鈕主要是實現(xiàn)用戶和管理員修改密碼以及注冊新用戶,它也是通過該按鈕鏈接一個新的界面,實現(xiàn)密碼修改和新用戶

89、注冊。</p><p>  退出:該按鈕主要是實現(xiàn)退出數(shù)據(jù)庫系統(tǒng),結束查詢,修改等操作。該按鈕是一個級聯(lián)的按鈕,當用戶或者管理員登陸到了數(shù)據(jù)庫的內部,必須一級一級關閉數(shù)據(jù)庫,最終退出數(shù)據(jù)庫系統(tǒng),否則直接使用該按鈕無法實現(xiàn)徹底的退出數(shù)據(jù)庫操作系統(tǒng)。</p><p><b>  數(shù)據(jù)庫登陸界面介紹</b></p><p>  油氣田地面工程設計理論

90、數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)庫登陸界面圖見本文5.31節(jié)系統(tǒng)登陸的圖5.7,在該登陸界面的身份驗證框中,我使用了C++ Builder標準控件模板(Standard)中的GroupBox控件,利用了該控件可以將同一性質的組件集中在其內部以及它的單一選擇性,從而很方便的實現(xiàn)了用戶和管理員的身份驗證。該身份驗證和其右側的用戶名和密碼相聯(lián)系,以達到不同身份的操作者利用不同的用戶名和密碼登陸數(shù)據(jù)庫,實現(xiàn)數(shù)據(jù)庫知識的瀏覽、修改、查詢、刪除及添加等操作。其實在

91、該登陸界面的后臺存在兩個數(shù)據(jù)表,在登陸時,系統(tǒng)根據(jù)操作人員輸入的用戶名和密碼自動查找這兩個數(shù)據(jù)表,當輸入的用戶名和密碼完全符合表格中的內容時,將實現(xiàn)正確登陸,若不符合時系統(tǒng)將給出一定的提示。要實現(xiàn)這些功能則要靠后臺的程序來實現(xiàn),具體程序代碼見本文后敘內容。在該登陸界面中存在的“確定”按鈕和“取消”按鈕其功能分別是實現(xiàn)用戶進一步進入數(shù)據(jù)庫系統(tǒng)和退出用戶登陸界面而回到數(shù)據(jù)庫啟動界面。</p><p>  數(shù)據(jù)庫信息查

92、詢界面介紹</p><p>  圖5.2 數(shù)據(jù)庫信息查詢界面圖</p><p>  圖5.2為油氣田地面工程設計理論數(shù)據(jù)庫系統(tǒng)的數(shù)據(jù)庫信息查詢界面圖,在該界面中主要包含標題欄、菜單欄、數(shù)據(jù)庫目錄、數(shù)據(jù)庫索引、數(shù)據(jù)庫搜索、顯示界面以及狀態(tài)欄七大部分,其各個部分的功能介紹如下:</p><p>  標題欄:用來顯示該數(shù)據(jù)庫的名稱,該界面的標題欄名稱為油氣田地面工程理

93、論數(shù)據(jù)庫。</p><p>  菜單欄:該部分由文件、計算程序和關于三個菜單組成,分別實現(xiàn)3種不同的功能。文件菜單主要是實現(xiàn)該界面的退出,點擊該菜單下面的子菜單“退出”就可以返回用戶登陸界面。計算程序菜單內包含了油氣田地面工程理論設計時所遇到的典型計算公式。為了使設計者在設計時擺脫繁重的數(shù)據(jù)計算以及提高設計效率,縮短設計時間,我們決定在此次數(shù)據(jù)庫編制中利用C++ Builder所見即所得的特性,將油氣田地面工程理

94、論設計中所遇到的典型公式進行編程,在使用該菜單時,操作者只要選擇好所要計算的內容,然后正確的輸入計算參數(shù)就可以進行相關內容的計算,從而方便快捷的得到了設計所需要的有關數(shù)據(jù),提高了設計效率,縮短了設計時間。關于菜單介紹了本次數(shù)據(jù)庫制作方面的有關情況,其具體內容見圖5.3。</p><p>  圖5.3 數(shù)據(jù)庫中“關于”菜單界面圖</p><p>  數(shù)據(jù)庫目錄:該部分內容相當于書本的目錄

95、。本數(shù)據(jù)庫系統(tǒng)的這部分內容主要是依據(jù)油氣田地面工程設計理論部分的紙本文件編排形式進行,從而建立起該數(shù)據(jù)庫的查詢目錄,以方便用戶和管理員進行數(shù)據(jù)庫內容的瀏覽、查詢、刪除等操作。</p><p>  數(shù)據(jù)庫索引:本部分內容主要包含了油氣田地面工程設計理論紙本文件中各個章節(jié)所出現(xiàn)的主要設計內容,以方便設計人員隨時根據(jù)設計需要來查詢相對應的理論知識。該部分不局限于紙本文件章節(jié)的限制,設計者可以根據(jù)設計需要隨時進行查詢、瀏

96、覽所需要的內容,從而使本數(shù)據(jù)庫具有了較強的靈活性,方便了設計的需要。該部分內容也是本次油氣田地面工程設計理論數(shù)據(jù)庫編制中的特色內容。</p><p>  數(shù)據(jù)庫搜索:這部分內容實現(xiàn)了油氣田地面工程設計理論數(shù)據(jù)庫信息的查詢。在該部分用戶可以根據(jù)設計需要,在所提供的控件內輸入所要查詢的相關內容,然后點擊顯示按鈕,就可以進入信息查詢和瀏覽狀態(tài)。這部分內容是將C++ Builder數(shù)據(jù)庫部分和Word文檔聯(lián)系在了一起。當

97、用戶將要查詢的內容輸入系統(tǒng)所提供的DBEdit控件后,點擊顯示按鈕,系統(tǒng)會自動根據(jù)用戶輸入的相關內容,在后臺建立的數(shù)據(jù)庫表格中查詢相關內容。當查詢到相關信息后,系統(tǒng)會自動調用和打開承載本部分內容Word文檔或者PDF文件,從而實現(xiàn)數(shù)據(jù)庫信息的查詢功能。當系統(tǒng)沒有檢索到相關內容后,系統(tǒng)會進行提示,以便讓用戶輸入新的查詢內容,以盡最大可能實現(xiàn)信息的查詢功能。</p><p>  顯示界面:該界面主要由兩部分組成,其中

98、一部分如圖5.3所顯示的圖片部分,本部分沒有什么實際意義,主要是本著數(shù)據(jù)庫系統(tǒng)的美觀性而置的。另外一部分是用戶或管理員在進行信息查詢時,用來顯示相關內容而調用的Word文檔或PDF文件,本部分是進行信息查詢的關鍵界面。它是用戶進行信息查詢,管理員進行信息刪除、添加、瀏覽、查詢和修改的主宰界面,是本數(shù)據(jù)庫系統(tǒng)必不可少的關鍵部分。</p><p>  狀態(tài)欄:本部分內容是此次油氣田地面工程設計理論數(shù)據(jù)庫系統(tǒng)編制中的輔

99、助內容,主要是為了體現(xiàn)用戶和管理員使用本數(shù)據(jù)庫系統(tǒng)的當前日期和時間,對整個數(shù)據(jù)庫系統(tǒng)來說意義不是很大。但是在編制該部分內容時,使用了C++ Builder系統(tǒng)控件模板(Sytem)中的Timer控件,通過此控件的使用,為我們以后設計定時裝置奠定了一定的理論基礎,具有很強的現(xiàn)實適用性。由于該控件所設定的時間裝置可以隨著計算機系統(tǒng)時間的變化而變化,從而實現(xiàn)了本數(shù)據(jù)庫系統(tǒng)時鐘與計算機系統(tǒng)時鐘同步變化的功能。</p><p&

100、gt;<b>  文件調用格式分析</b></p><p>  在此次數(shù)據(jù)庫編制前,我首先對所要編制的具體內容進行了分析、分類和整理,通過這些分析整理我充分認識到了所要編制內容的特殊性。在真正開始投入數(shù)據(jù)庫編制時,我和常玉連老師、吳敏師姐通過一系列論證,最后決定采用調用其它格式文件的方法來實現(xiàn)信息的瀏覽和查詢。</p><p>  在考慮選用何種格式文件作為數(shù)據(jù)庫系統(tǒng)

101、信息查詢的調用文件時,我們首選了Word文檔。因為要在本數(shù)據(jù)庫系統(tǒng)中實現(xiàn)管理員對數(shù)據(jù)庫信息的隨時修改、添加和刪除等,就必須采用一個可以隨時更改其內部內容的文件,而我們經(jīng)常使用Word文檔正好滿足了我們這方面的使用需要。決定采用Word文檔作為管理員界面的調用文件后,我們又決定采用PDF文件作為用戶界面的調用文件。因為PDF文件在瀏覽時用戶不能隨意改變其內部內容,而且由Word文檔轉換PDF文件非常方便。正因為PDF文件具備了上述兩方面的

102、優(yōu)點,所以我們在用戶界面的文件調用上采用此種格式的文件。其具體調用文件格式見圖5.4所示。</p><p>  圖5.4 數(shù)據(jù)庫信息查詢界面調用文件格式示意圖</p><p><b>  系統(tǒng)模塊分析</b></p><p>  具有不同權限的用戶正確輸入用戶名和密碼后進入系統(tǒng)會有不同的操作權限。普通用戶和管理員系統(tǒng)登錄的程序流程圖分別如圖

103、5.5和圖5.6所示。</p><p><b>  Y</b></p><p><b>  N</b></p><p><b>  Y</b></p><p><b>  N</b></p><p>  圖5.5 普通用戶系統(tǒng)登

104、錄程序流程圖</p><p><b>  Y</b></p><p><b>  N</b></p><p><b>  Y</b></p><p><b>  N</b></p><p>  圖5.6 管理員系統(tǒng)登錄程序流程圖

105、</p><p><b>  登陸系統(tǒng)分析</b></p><p>  打開油氣田地面工程理論設計數(shù)據(jù)庫系統(tǒng)啟動界面后,首先進入系統(tǒng)登錄界面。登錄界面和程序流程圖分別為圖5.7和圖5.8所示。</p><p>  圖5.7 數(shù)據(jù)庫登陸界面圖</p><p><b>  N</b></p&g

106、t;<p><b>  Y</b></p><p>  圖5.8 操作人員登錄程序流程圖</p><p>  以下是操作者(用戶和管理員)在登錄時本數(shù)據(jù)庫系統(tǒng)所作的身份驗證功能的核心代碼。認證過程在“確定”按鈕的OnClick事件處理程序中完成。在該事件核心代碼編寫前我們首先在登陸界面的Form2.h文件中加入兩個成員變量。整個事件的具體代碼如下:&

107、lt;/p><p><b>  public:</b></p><p>  __fastcall TForm2(TComponent* Owner);</p><p>  int m_nTimes;</p><p>  AnsiString m_strStuName;</p><p>

108、;  //在Form2.h文件中定義兩個成員變量,分別用來表示用戶(管理員)試圖登錄的次數(shù)以及登陸時所使用用戶名。</p><p>  //----------------------------------------------------------------</p><p>  #include <vcl.h></p><p>  #pragm

109、a hdrstop</p><p>  #include "Unit6.h"</p><p>  //數(shù)據(jù)庫登陸界面的頭文件</p><p>  #include "Data.h"</p><p>  #include "Unit1.h" </p><p> 

溫馨提示

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

評論

0/150

提交評論