版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、<p><b> 摘要</b></p><p> 21世紀,隨著社會經(jīng)濟的發(fā)展,人們不滿足于僅僅只能從ATM上取錢,人們希望能方便的進行現(xiàn)金存款,特別是現(xiàn)在信用卡的使用量的快速增長,很多持卡人都希望能夠方便的通過ATM進行更多自動化的操作. 本系統(tǒng)的設(shè)計主要向用戶提供一個方便,簡潔,及時,隨時隨地可以隨心隨意存取款的系統(tǒng).</p><p> 本文中所做
2、的主要工作如下:</p><p> 一、在開始動畫中使用for循環(huán)語句制造時間延遲。</p><p> 二、在自定義頭文件中定義了由多種類型數(shù)據(jù)組成的結(jié)構(gòu)體。</p><p> 三、在新用戶注冊和老用戶登陸等函數(shù)中多次應(yīng)用對數(shù)組和對文件的操作等相關(guān)技術(shù)。</p><p> 四、另外還運用while循環(huán)實現(xiàn)返回上級多次循環(huán)輸入以及函數(shù)的
3、相關(guān)知識。</p><p> 本系統(tǒng)實現(xiàn)主要功能用戶的開戶,用戶的登陸,管理員的注冊,管理員的登陸四大模塊. </p><p> 關(guān)鍵詞:自動取款機系統(tǒng) </p><p><b> Abstract</b></p><p> In the 21st century, with the developme
4、nt of social economy, people are not satisfied with just only take money from the ATM, people hope to convenient for cash deposit, especially now the credit card usage of rapid growth, a lot of cardholder hope can easily
5、 through the ATM more automated operation. This system is designed mainly to the user to provide a convenient, concise, timely, anytime, anywhere can follow optional deposit or the system.</p><p> In this p
6、aper the main work is as follows:</p><p> (1) in the beginning of the animation used for circulation statement manufacturing time delay.</p><p> (2)in the custom header file defines by a varie
7、ty of types of data structures.</p><p> (3)in the new user registration and old users log on functions of multiple application on array and the operation of the documents and other related technology.</p
8、><p> (4) also use while cycle realize to return to the superior multiple cycle input and function of relevant knowledge.</p><p> This system realize the main function of the user to open an acco
9、unt, the user of the login, the administrator of the registration, the administrator of the login four modules.</p><p> Key words: automatic teller machine system</p><p><b> 目錄</b>
10、</p><p> 摘要錯誤!未定義書簽。</p><p> Abstract錯誤!未定義書簽。</p><p> 第一章緒論錯誤!未定義書簽。</p><p> 1.1 課題背景5</p><p> 1.1.1 研究目的錯誤!未定義書簽。</p><p> 1.1.2
11、研究現(xiàn)狀6</p><p> 1.1.3 可行性分析錯誤!未定義書簽。</p><p> 1.1.4 必要性分析6 </p><p> 1.2 本文工作錯誤!未定義書簽。</p><p> 1.3 本文結(jié)構(gòu)錯誤!未定義書簽。</p><p> 第
12、二章背景知識9</p><p> 2.1 Foxpro簡介9</p><p> 2.2 Microsoft SQL Server 2000簡介12</p><p> 第三章 課題分析14</p><p> 2.1系統(tǒng)分析14</p><p> 2.1.1.銀行取款機系統(tǒng)的需求分析14</p
13、><p> 2.1.2 銀行取款機系統(tǒng)的功能需求分析15</p><p> 2.2開發(fā)軟件的分析</p><p> 第四章概要設(shè)計錯誤!未定義書簽。</p><p> 4.1 系統(tǒng)體系結(jié)構(gòu)錯誤!未定義書簽。</p><p> 4.1.1 系統(tǒng)模塊圖錯誤!未定義書簽。</p><p&g
14、t; 4.2 數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計錯誤!未定義書簽。</p><p> 4.2.1 E-R模型錯誤!未定義書簽。</p><p> 4.3 數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計錯誤!未定義書簽。</p><p> 4.3.1 E-R模型到關(guān)系模式的轉(zhuǎn)換規(guī)則錯誤!未定義書簽。</p><p> 4.3.2 關(guān)系模式錯誤!未定義書簽。</p
15、><p> 4.3.3 關(guān)系模式優(yōu)化錯誤!未定義書簽。</p><p> 4.3.4 數(shù)據(jù)庫表設(shè)計錯誤!未定義書簽。</p><p> 第五章詳細設(shè)計錯誤!未定義書簽。</p><p> 5.1 模塊1錯誤!未定義書簽。</p><p> 5.1.1 功能描述錯誤!未定義書簽。</p>
16、<p> 5.1.2 界面設(shè)計錯誤!未定義書簽。</p><p> 5.1.3 數(shù)據(jù)結(jié)構(gòu)錯誤!未定義書簽。</p><p> 5.1.4 程序流程圖錯誤!未定義書簽。</p><p> 5.1.5 程序算法錯誤!未定義書簽。</p><p> 5.2 模塊2錯誤!未定義書簽。</p><p&g
17、t; 第六章系統(tǒng)測試錯誤!未定義書簽。</p><p> 6.1 單元測試錯誤!未定義書簽。</p><p> 6.2 集成測試錯誤!未定義書簽。</p><p> 第七章總結(jié)和展望錯誤!未定義書簽。</p><p> 參考文獻錯誤!未定義書簽。</p><p> 致謝錯誤!未定義書簽。&l
18、t;/p><p> 附錄錯誤!未定義書簽。</p><p> 代碼1錯誤!未定義書簽。</p><p> 代碼2....................................................................................................................10</p&
19、gt;<p><b> 緒論</b></p><p><b> 1.1課題背景</b></p><p> 為了開發(fā)出真正滿足用戶需求的軟件產(chǎn)品,首先必須知道用戶的需求。需求分析的基本任務(wù)是準確地回答“系統(tǒng)必須做什么?”這個問題。具體地說,應(yīng)該確定系統(tǒng)必須具有的功能,性能,可靠性和可用性,必須實現(xiàn)的出錯處理需求,接口需求和逆向需
20、求,必須滿足的約束條件,并且預(yù)測系統(tǒng)的發(fā)展前景.</p><p> 當(dāng)今時代是飛速發(fā)展的信息時代,在各行各業(yè)中離不開信息處理,這正是計算機被廣泛應(yīng)用于信息管理系統(tǒng)的環(huán)境。計算機的最大好處在于利用它能夠進行信息管理。使用計算機進行信息控制,不僅提高了工作效率,而且大大的提高了其安全性。尤其對于復(fù)雜的信息管理,計算機能夠充分發(fā)揮它的優(yōu)越性能。</p><p> 管理信息系統(tǒng)是進行信息的采集
21、、存儲、加工、維護和使用的系統(tǒng),它是隨著管理科學(xué)和技術(shù)科學(xué)的發(fā)展而形成的。自動取款機系統(tǒng)是一個金融單位不可缺少的部分,它的內(nèi)容對于學(xué)校的決策者和管理者來說都至關(guān)重要,所以銀行自動取款機系統(tǒng)應(yīng)該能夠為用戶提供充足的信息和快捷的查詢和取款手段,對用戶來說可以輕松的查詢自己的余額以及信息等。但是一直以來人們都是靠傳統(tǒng)人工的方式管理用戶資料和用戶余額。這種管理方式存在著許多缺點,如:效率低、保密性差,另外時間一長,將產(chǎn)生大量的文件和數(shù)據(jù),這對于
22、查找、更新和維護都帶來了不少的困難。</p><p> 隨著科學(xué)技術(shù)的不斷提高,計算機科學(xué)日漸成熟,其強大的功能已為人們深刻認識,它已進入人類社會的各個領(lǐng)域并發(fā)揮著越來越重要的作用。作為計算機應(yīng)用的一部分,使用計算機對用戶信息進行管理,有著手工管理所無法比擬的優(yōu)點.例如:檢索迅速、查找和取款方便、可靠性高、存儲信息量大、保密性強、壽命長、成本低等。這些優(yōu)點能夠極大地提高取款和用戶資料查詢的效率,也是企業(yè)的科學(xué)化
23、、正規(guī)化管理,與世界接軌的重要條件。因此,開發(fā)這樣的一套銀行取款機系統(tǒng)成為很有必要的事情。</p><p> 銀行自動取款機系統(tǒng)提供了強大的用戶資料查詢和取款功能,方便用戶對自己信息的修改、查詢等操作,同時一樣的方面系統(tǒng)管理員對系統(tǒng)的維護和管理。</p><p><b> 1.1.1研究目的</b></p><p> 隨著科技發(fā)展和社會進
24、步,尤其是計算機大范圍的普及,計算機應(yīng)用逐漸由大規(guī)??茖W(xué)計算的海量數(shù)據(jù)處理轉(zhuǎn)向大規(guī)模的事務(wù)處理和對工作流的管理,這就產(chǎn)生了以臺式計算機為核心,以數(shù)據(jù)庫管理系統(tǒng)為開發(fā)環(huán)境的管理信息系統(tǒng)在大規(guī)模的事務(wù)處理和對工作流的管理等方面的應(yīng)用,特別是在銀行自動取款機之中的應(yīng)用日益受到人們的關(guān)注。</p><p> ATM自動取款機是由計算機控制的持卡人自我服務(wù)型的金融專用設(shè)備。ATM是英文Automatic Teller M
25、achine的縮寫。ATM是最普遍的自助銀行設(shè)備,可以提供最基本的銀行服務(wù)之一,即出鈔交易,有些全功能的產(chǎn)品還可以提供信封存款業(yè)務(wù)。在ATM自動取款機上也可以進行賬戶查詢、修改密碼和轉(zhuǎn)賬的業(yè)務(wù)等。作為自助式金融服務(wù)終端,除了提供金融業(yè)務(wù)功能之外,ATM自動取款機還具有維護、測試、事件報告、監(jiān)控和管理等多種功能。 ATM自動取款機系統(tǒng),是一個有終端機,ATM系統(tǒng),數(shù)據(jù)庫組成的應(yīng)用系統(tǒng)。系統(tǒng)功能有用戶在ATM上提取現(xiàn)金、查詢賬戶余額、修改密
26、碼及轉(zhuǎn)賬功能。 </p><p> ATM自動取款機系統(tǒng)向用戶提供一個方便、簡單、及時、隨時隨地可以隨心所欲存取款的互聯(lián)的現(xiàn)代計算機化的網(wǎng)絡(luò)系統(tǒng)??梢源蟠鬁p少工作人員,節(jié)約人力資源的開銷,同時由于手續(xù)程序減少也可以減輕業(yè)務(wù)員的工作負擔(dān),有效地提高了整體的工作效率和精確度。 減少了用戶辦理業(yè)務(wù)的等待時間;用戶可以隨時隨地可以隨心所欲存取款,并且操作簡單易懂;用戶還可以選擇在柜臺辦理業(yè)務(wù)或自己在自動
27、提款機和自動取款機辦理業(yè)務(wù)。</p><p> 銀行取款機系統(tǒng)應(yīng)該能夠為用戶提供充足的信息和快捷的查詢和取款手段,對用戶來說可以輕松的查詢自己的余額以及信息等,因此用戶者必須達到以下幾中最基本的目標:</p><p> 1.管理員能夠?qū)崿F(xiàn)對客戶的信息的查詢,賬號凍結(jié),賬號解凍,賬號注銷等操作。</p><p> 2.客戶能夠查詢自己的余額,可以完成取款,轉(zhuǎn)帳,
28、存款和修改自己的用戶密碼,掛失等操作。</p><p><b> 1.1.2研究現(xiàn)狀</b></p><p> ATM 是一種高度精密的機電一體化智能裝置,通過磁性代碼卡或智能卡實現(xiàn)金融交易的自助服務(wù)以代替銀行柜面人員的工作。作為銀行儲蓄或信用卡終端設(shè)備,持卡人可通過 ATM 使用信用卡或儲蓄卡,根據(jù)密碼辦理自動取款、查詢余額、轉(zhuǎn)賬劃撥,還可進行現(xiàn)金存款
29、、存折補登、更改密碼、手機充值、支票存款等業(yè)務(wù)。</p><p> 1939年,Luther George Simjian 就發(fā)明了ATM 的雛形。6個月后,花旗銀行(City Bank)的前身紐約市第一國立城市銀行(First National City Bank)。1967 年 6 月 27 日,位于英國米德爾賽克斯郡安菲爾德的巴克萊銀行(Barclays Bank)安裝了世界第一臺現(xiàn)鈔發(fā)放
30、機?,F(xiàn)代意義的ATM提出于1968年,原型出現(xiàn)于1969年。Don Wetzel 是ATM部分專利的擁有人和發(fā)明的貢獻者。</p><p> 我國的ATM是伴隨著銀行卡業(yè)務(wù)的成長而逐步發(fā)展起來的,為了滿足持卡人在銀行營業(yè)時間外也能夠用卡存、取款,銀行投資并安裝了ATM,以此提供24小時的自助服務(wù)。1987年2月,我國第一臺ATM在廣東珠海投入使用1993 年我國“金卡工程”啟動后,國內(nèi)銀行對A
31、TM 需求激增。1998年,全國ATM突破2萬臺。進入21世紀后,ATM數(shù)量速度迅猛。到2007年底,中國聯(lián)網(wǎng)ATM機已經(jīng)達到12.3萬臺,近5年國內(nèi)ATM設(shè)備保有量實現(xiàn)了年均20.22%的復(fù)合增長,整體ATM機市場保有量已經(jīng)達到13.8萬臺,預(yù)計2011年會達到20萬臺。ATM是社會發(fā)展過程中電子技術(shù)與銀行業(yè)務(wù)完美結(jié)合的產(chǎn)物之一,信息技術(shù)的創(chuàng)新推動著ATM向更加智能化和人性化的方向發(fā)展。現(xiàn)在的ATM機使用方便、界面更加
32、友好,為廣大客戶提供了一種便捷的自助服務(wù)方式,不但增強了銀行服務(wù)的靈活性,而且提升了銀行的整體形象。</p><p> 1.1.3 可行性分析</p><p> 可行性研究能使新系統(tǒng)達到以最小的開發(fā)成本取得最佳的經(jīng)濟效益??尚行匝芯康哪康?,是根據(jù)開發(fā)管理信息系統(tǒng)的請求,通過初步調(diào)查和系統(tǒng)目標分析,對要開發(fā)的銀行自動取款等管理信息系統(tǒng)從技術(shù)上、經(jīng)濟上、資源上和管理上進行是否可行的研究。
33、這是一項保證資源合理使用、避免失誤和浪費的重要工作。 1.經(jīng)濟上的可行性:主要分析成本與收益、投資效果等。 2.技術(shù)上的可行性:要分析技術(shù)力量、計算機性能、通訊網(wǎng)絡(luò)和系統(tǒng)條件等。 3.資源上的可行性:主要指管理、經(jīng)費能否得到保證。 4. 管理上的可行性:如取款管理水平、數(shù)據(jù)收集可能性、規(guī)章制度健全程度和領(lǐng)導(dǎo)對發(fā)展系統(tǒng)的態(tài)度。</p><p> 1.1.4 必要性分析</p><p&g
34、t; 在今世紀的科技時代,科學(xué)技術(shù)突飛猛進,銀行取款機已經(jīng)不僅是在金融上應(yīng)用,而且在生活中也是同樣得到了廣泛在應(yīng)用。以前,不管是大小型銀行都是人工進行管理、甚至是很多大小銀行對客戶資料的查詢,存款,取款基本上是靠人工進行管理。但隨著時間的變化,各界金融社會規(guī)模的擴大,有關(guān)客戶管理工作和所涉及到的數(shù)據(jù)量越來越大越來越多,大多數(shù)銀行不得不靠增加人力、物力、財力來進行客戶資料,存款和取款管理。但是人工管理客戶檔案具有效率低、查找麻煩、可靠性
35、不高、保密性低等因素。因此開發(fā)出一個不僅僅是適用于大中型銀行取款機系統(tǒng)以及其它銀行通用的銀行取款機系統(tǒng)是必要的。</p><p> 開發(fā)一個銀行取款機系統(tǒng),采用計算機對客戶資料和客戶余額進行管理,進一步提高了效益和現(xiàn)代化水平。為廣大客戶和金融單位提高工作效率,實現(xiàn)客戶信息管理工作流程的系統(tǒng)化、規(guī)范化和自動化。在今天信息時代這種傳統(tǒng)的管理方法必然會被計算機為基礎(chǔ)的信息管理系統(tǒng)所代替。一個高效的自動取款機系統(tǒng)可以管
36、理客戶檔案,滿足客戶各種需求,不需要大量的人力,只需要一些取款機器,取款機操作系統(tǒng)和專門操作人員,就能節(jié)省大量人力,可以迅速查到所需信息、可以提供取款和存款的一些服務(wù),高效、安全,客戶在能方便的查看自己的信息和滿足自己的需求。</p><p><b> 第二章 背景知識</b></p><p><b> 2.1 Qt簡介</b></p&
37、gt;<p> Qt是一個1991年由奇趣科技開發(fā)的跨平臺C++圖形用戶界面應(yīng)用程序開發(fā)框架。它既可以開發(fā)GUI程式,也可用于開發(fā)非GUI程式,比如控制臺工具和服務(wù)器。Qt是面向?qū)ο笳Z言,易于擴展,并且允許組件編程。2008年,奇趣科技被諾基亞公司收購,QT也因此成為諾基亞旗下的編程語言工具。它提供給應(yīng)用程序開發(fā)者建立藝術(shù)級的圖形用戶界面所需的所用功能。Qt很容易擴展,并且允許真正地組件編程?;旧?,Qt 同 X Win
38、dow 上的 Motif,Openwin,GTK 等圖形界面庫和 Windows 平臺上的 MFC,OWL,VCL,ATL 是同類型的東西。</p><p><b> Qt支持下述平臺</b></p><p> Qt版本支持多種平臺包括我們比較熟悉的微軟公司生產(chǎn)的Windows系列-95、98、NT4.0、ME、2000、XP、Vista和Win7。</p&
39、gt;<p> 也包括Unix系統(tǒng)下Unix/X11 - Linux、Sun Solaris、HP-UX、CompaqTru64、 UNIX、IBM、AIX、SGI、IRIX、FreeBSD、BSD/OS和其它很多X11平臺。</p><p> Qt Creator</p><p> 在發(fā)布Qt4.6的同時,作為Qt開發(fā)跨平臺IDE的Qt Creator 也發(fā)布了更新版
40、本。Qt Creator1.3和Qt4.6共同構(gòu)成的Qt SDK,包含了開發(fā)跨平臺應(yīng)用程序所需的全部功能。</p><p> Qt Creator是一個用于Qt開發(fā)的輕量級跨平臺集成開發(fā)環(huán)境。Qt Creator可帶來兩大關(guān)鍵益處:提供首個專為支持跨平臺開發(fā)而設(shè)計的集成開發(fā)環(huán)境 (IDE),并確保首次接觸Qt框架的開發(fā)人員能迅速上手和操作。</p><p> Qt Creator包含了
41、一套用于創(chuàng)建和測試基于Qt應(yīng)用程序的高效工具,包括:</p><p> 一個高級的C++代碼編輯器、上下文感知幫助系統(tǒng)、可視化調(diào)試器、源代碼管理、項目和構(gòu)建管理工具。</p><p><b> Qt優(yōu)勢</b></p><p><b> 優(yōu)良的跨平臺特性:</b></p><p> Qt支持
42、下列操作系統(tǒng): Microsoft Windows 95/98、Microsoft Windows NT、 Linux、 Solaris、 SunOS、HP-UX、Digital UNIX (OSF/1, Tru64)、Irix、 FreeBSD、BSD/OS、SCO、AIX、OS390、QNX等等。</p><p><b> 面向?qū)ο螅?lt;/b></p><p>
43、 Qt的良好封裝機制使得Qt的模塊化程度非常高,可重用性較好,對于用戶開發(fā)來說是非常方便的。Qt提供了一種稱為signals/slots 的安全類型來替代callback,這使得各個元件之間的協(xié)同工作變得十分簡單。</p><p> 正是由于Qt以上的優(yōu)勢條件,Qt得到廣泛應(yīng)用,并且發(fā)行了多款優(yōu)秀版本。</p><p> Qt是一個跨平臺的C++圖形用戶界面庫,由挪威 TrollTec
44、h 公司于1995年底出品。2008年1月31日,Nokia公司宣布通過公開競購的方式收購TrollTech公司,旗下包括Qt在內(nèi)的技術(shù)都歸入Nokia旗下。并且Nokia針對自己的移動設(shè)備平臺規(guī)劃的需要,將Qt按不同的版本發(fā)行:</p><p> Qt商業(yè)版:提供給商業(yè)軟件開發(fā)。它們提供傳統(tǒng)商業(yè)軟件發(fā)行版并且提供在協(xié)議有效期內(nèi)的免費升級和技術(shù)支持服務(wù)。</p><p> Qt開源版:
45、僅僅為了開發(fā)自由和開放源碼軟件,提供了和商業(yè)版本同樣的功能。GNU通用公共許可證下,它是免費的。</p><p> Qt專業(yè)版和企業(yè)版是Qt的商業(yè)版本。</p><p> 2009年12月1日,諾基亞發(fā)布了Qt 4.6。</p><p> Qt 4.6 首次包含了對Symbian平臺的支持,并在其所支持的平臺中新增了 Windows 7、Apple Mac O
46、S 10.6 (雪豹) 和即將上市的Maemo 6。此外還為實時操作系統(tǒng)QNX 和 VxWorks提供了網(wǎng)絡(luò)社區(qū)支持。對Maemo 5 的支持目前也已進入研發(fā)階段,其技術(shù)預(yù)覽版第二版于2009年12月1日發(fā)布。</p><p> Qt 對 X11 、X86 、ARM 及 Symbian 的支持首次為開發(fā)人員創(chuàng)造了使用同一代碼庫同時針對這多個平臺進行開發(fā)的機會。能夠跨平臺分享代碼就意味著開發(fā)人員所開發(fā)的應(yīng)用程序上
47、市的速度將更快,影響的設(shè)備用戶群將更廣。</p><p> Qt Mobility項目下的全新Qt API技術(shù)預(yù)覽版也同時發(fā)布。這些跨平臺的API為開發(fā)人員提供了多種功能,如導(dǎo)航類設(shè)備的定位功能,以及信息發(fā)送和接收、聯(lián)系人和網(wǎng)絡(luò)連接管理等。</p><p> 性能提升主要包括:一個經(jīng)過高度優(yōu)化、重新編寫的 Qt GraphicsView 渲染算法、一個全新的 OpenGL 繪圖引擎、W
48、ebKit、使用 OpenVG 對 2D 矢量圖形的支持,以及對全新 DirectFB 的支持。</p><p> 而本課題的研究就是選擇使用Qt4.6版本為開發(fā)環(huán)境搭建開發(fā)的。</p><p> Sqlite3數(shù)據(jù)庫簡介</p><p> SQLite,是一款輕型的數(shù)據(jù)庫,是遵守ACID的關(guān)聯(lián)式數(shù)據(jù)庫管理系統(tǒng),它的設(shè)計目標是嵌入式的,而且目前已經(jīng)在很多嵌入式
49、產(chǎn)品中使用了它,它占用資源非常的低,在嵌入式設(shè)備中,可能只需要幾百K的內(nèi)存就夠了。它能夠支持Windows/Linux/Unix等等主流的操作系統(tǒng),同時能夠跟很多程序語言相結(jié)合,比如 Tcl、C#、PHP、Java等,還有ODBC接口,同樣比起Mysql、PostgreSQL這兩款開源世界著名的數(shù)據(jù)庫管理系統(tǒng)來講,它的處理速度比他們都快。不像常見的客戶-服務(wù)器范例,SQLite引擎不是個程序與之通信的獨立進程,而是連接到程序中成為它的一
50、個主要部分。所以主要的通信協(xié)議是在編程語言內(nèi)的直接API調(diào)用。這在消耗總量、延遲時間和整體簡單性上有積極的作用。整個數(shù)據(jù)庫(定義、表、索引和數(shù)據(jù)本身)都在宿主主機上存儲在一個單一的文件中。它的簡單的設(shè)計是通過在開始一個事務(wù)的時候鎖定整個數(shù)據(jù)文件而完成的。而sqlite3就是sqlite新開發(fā)的版本。</p><p><b> 特性</b></p><p> 1.
51、ACID事務(wù);</p><p> 2. 零配置 – 無需安裝和管理配置;</p><p> 3. 儲存在單一磁盤文件中的一個完整的數(shù)據(jù)庫;</p><p> 4. 數(shù)據(jù)庫文件可以在不同字節(jié)順序的機器間自由的共享;</p><p> 5. 支持數(shù)據(jù)庫大小至2TB;</p><p> 6. 足夠小, 大致3萬行C
52、代碼, 250K;</p><p> 7. 比一些流行的數(shù)據(jù)庫在大部分普通數(shù)據(jù)庫操作要快;</p><p> 8. 簡單, 輕松的API;</p><p> 9. 包含TCL綁定, 同時通過Wrapper支持其他語言的綁定;</p><p> 10. 良好注釋的源代碼, 并且有著90%以上的測試覆蓋率;</p><
53、p> 11. 獨立: 沒有額外依賴;</p><p> 12. Source完全的Open, 你可以用于任何用途, 包括出售它;</p><p> 13. 支持多種開發(fā)語言,C, PHP, Perl, Java, C#,Python, Ruby。</p><p><b> 功能</b></p><p>
54、SQLite雖然很小巧,但是支持的SQL語句不會遜色于其他開源數(shù)據(jù)庫,與Microsoft的Access相比,它們有很大的區(qū)別。比如SQLite 支持跨平臺,操作簡單,能夠使用很多語言直接創(chuàng)建數(shù)據(jù)庫,而不象Access一樣需要Office的支持。如果你是個很小型的應(yīng)用,或者你想做嵌入式開發(fā),沒有合適的數(shù)據(jù)庫系統(tǒng),那么現(xiàn)在你可以考慮使用SQLite。目前它的最新版本是 3.7.8 。它的官方網(wǎng)站是:http://www.sqlite. o
55、rg或者http://www.sqlite .com .cn,能在上面獲得源代碼和文檔。同時因為數(shù)據(jù)庫結(jié)構(gòu)簡單,系統(tǒng)源代碼也不是很多,也適合想研究數(shù)據(jù)庫系統(tǒng)開發(fā)的專業(yè)人士。</p><p><b> 版本發(fā)布</b></p><p> 2010年08月09日,SQLite 數(shù)據(jù)庫發(fā)布 3.7.0.1 版本,該版本改進內(nèi)容:</p><p>
56、 (1)修正了一個潛在的數(shù)據(jù)庫崩潰的問題,這個問題產(chǎn)生于 3.7.0 和 3.6.23.1 版本的程序所生成的文件。</p><p> (2)修正了自動重建索引可能導(dǎo)致的性能問題。?</p><p> 2010年10月19日,SQLite 3.7.3 發(fā)布,關(guān)系數(shù)據(jù)庫,該版本增加了 sqlite3_create_function_v2() 接口,用以處理析構(gòu)器(destructor)
57、的回調(diào);通過使用應(yīng)用提供的回調(diào)函數(shù)來定義查詢區(qū)域的邊界以增加對自定義 r-tree 查詢;默認的頁緩存努力避免內(nèi)存分配大于預(yù)設(shè)SQLITE_CONFIG_PAGECACHE的值等。</p><p> 第三章 自動取款機系統(tǒng)的分析</p><p><b> 2.1系統(tǒng)分析</b></p><p> 2.1.1.銀行取款機系統(tǒng)的需求分析<
58、;/p><p> 某銀行擬開發(fā)一個自動取款機系統(tǒng),它是一個由自動取款機、中央計算機、分行計算機及柜員終端組成的網(wǎng)絡(luò)系統(tǒng)。銀行取款機和中央計算機由總行投資購買??傂袚碛卸嗯_取款機,分別設(shè)在全市各主要街道上。分行負責(zé)提供分行計算機和柜員終端。柜員終端設(shè)在分行營業(yè)廳及分行下屬的各個儲蓄所內(nèi)。該系統(tǒng)的軟件開發(fā)成本由各個分行分攤。</p><p> 銀行柜員使用柜員終端處理儲戶提交的儲蓄事務(wù)。儲戶可
59、以用現(xiàn)金或支票向自己擁有的某個帳戶內(nèi)存款或開新帳戶。儲戶也可以從自己的帳戶中取款,通常一個儲戶可能擁有多個帳戶。柜員負責(zé)把儲戶提交的存款或取款事務(wù)輸進柜員終端,接收儲戶交來的現(xiàn)金或支票,或付給儲戶現(xiàn)金。柜員終端與相應(yīng)的分行計算機通信,分行計算機具體處理針對某個帳戶的事務(wù)并且維護帳戶。</p><p> 擁有銀行帳戶的儲戶有權(quán)申請領(lǐng)取現(xiàn)金兌換卡。使用現(xiàn)金兌換卡可以銀行取款機訪問自己的帳戶。目前僅限于用現(xiàn)金兌換卡銀
60、行取款機上提取現(xiàn)金(即取款),或查詢有關(guān)自己帳戶的信息(例如,某個指定帳戶上的余額)。將來可能還要求使用銀行取款機辦理轉(zhuǎn)帳、存款等事務(wù)。</p><p> 所謂現(xiàn)金兌換卡就是一張?zhí)刂频拇趴ǎù顺绦虻氖强ㄌ柣驇ぬ枺???ㄌ柎_定了這張卡(卡號)可以訪問哪些帳戶。通常,一張卡可以訪問儲戶的若干個帳戶,但是不一定能訪問這個儲戶的全部帳戶。每張現(xiàn)金兌換卡僅屬于一個儲戶所有。</p><p> 當(dāng)用
61、戶把現(xiàn)金兌換卡銀行取款機之后,銀行取款機就與用戶交互,以獲取有關(guān)這次事務(wù)的信息,并與數(shù)據(jù)庫交換關(guān)于事務(wù)的信息。首先,銀行自動取款機要求用戶輸入賬號,接下來自動取款機把從這張帳號上讀到的信息以及用戶輸入的密碼傳給銀行取款機系統(tǒng),請求系統(tǒng)核對這些信息并處理這次事務(wù)。自動取款機軟件根據(jù)帳號上的信息確定這次事務(wù)與數(shù)據(jù)庫的對應(yīng)關(guān)系,并且委托相應(yīng)的程序驗證用戶密碼。如果用戶輸入的密碼是正確的,自動取款機系統(tǒng)就是要求用戶選擇事務(wù)類型(取款、存款、查詢
62、、轉(zhuǎn)賬、掛失、修改密碼等)。當(dāng)用戶選擇取款時,銀行取款機系統(tǒng)請求用戶輸入取款額。最后,銀行取款機從現(xiàn)金出口吐出現(xiàn)金,把用戶在數(shù)據(jù)庫的余額改寫,并且把出帳單寫入在數(shù)據(jù)庫的用戶資料上。</p><p> 2.1.2 銀行取款機系統(tǒng)的功能需求分析</p><p> 自動取款機系統(tǒng)主要提供客戶資料查詢和取款的功能,方便管理的帳戶上的信息查閱和取款平臺,用戶可以通過該系統(tǒng)查詢與自己相關(guān)信息,查看
63、自己帳戶上的余額,可以轉(zhuǎn)帳,可以存款,可以修改自己的用戶密碼。管理員可以通過銀行取款機系統(tǒng)把客戶的信息交易信息查詢,賬號凍結(jié),賬號解凍,賬號掛失等。</p><p> (1)取款機系統(tǒng)要可以判斷帳號的類別,如果不是有效的帳號則推出;</p><p> (2)可以在較快的時間內(nèi)響應(yīng)用戶的請求,并針對相應(yīng)的請求執(zhí)行正確的操作;</p><p> (3)查詢自己的賬
64、戶時應(yīng)顯示余額和可用余額,并顯示ATM機里所擁有的現(xiàn)金面值,讓用戶可以做出正確的選擇;</p><p> (4)提取現(xiàn)金時提示用戶輸入取款金額并判斷輸入是否確,如果錯誤提醒用戶并要求重新操作,正確則提醒用戶收取現(xiàn)金;</p><p> (5)轉(zhuǎn)賬匯款時讓用戶選擇轉(zhuǎn)賬類型,要求用戶輸入轉(zhuǎn)賬賬號后顯示轉(zhuǎn)入用戶名和轉(zhuǎn)賬賬號,以確保沒有輸入錯誤,讓用戶輸入轉(zhuǎn)賬金額,并作最后的確認;</p
65、><p> (6)進入修改密碼界面后提醒用戶輸入新密碼,并要求再次輸入以確保密碼統(tǒng)一無誤,在確認后完成修改操作,并提醒用戶新密碼生效;</p><p> (7)進入掛失界面后提醒用戶輸入賬號與密碼以及身份證號,設(shè)置標志位,凍結(jié)該賬號的用戶.</p><p> (8)對于錯誤的操作或者操作延時做出有效的處理。</p><p> 第三章 自動
66、取款機的設(shè)計</p><p> 經(jīng)過需求分析階段的工作,系統(tǒng)必須“做什么”已經(jīng)清楚了,現(xiàn)在是決定“怎樣做”的時候了.總體設(shè)計的基本目的就是回答“系統(tǒng)應(yīng)該如何實現(xiàn)?”這個問題??傮w設(shè)計過程通常由兩個主要階段組成:系統(tǒng)設(shè)計階段,確定系統(tǒng)的具體實現(xiàn)方案;結(jié)構(gòu)設(shè)計階段,確定軟件結(jié)構(gòu)。</p><p><b> 3.1系統(tǒng)要求</b></p><p>
67、; 當(dāng)用戶登錄該取款機系統(tǒng)之后,該取款機就與用戶交互,以獲取有關(guān)這次事務(wù)的信息,并與數(shù)據(jù)庫交換關(guān)于事務(wù)的信息。首先,自動取款機要求用戶輸入密碼,接下來銀行取款機把從這張帳號上讀到的信息以及用戶輸入的密碼傳給銀行取款機系統(tǒng),請求系統(tǒng)核對這些信息并處理這次事務(wù)。銀行取款機軟件根據(jù)帳號上的信息確定這次事務(wù)與數(shù)據(jù)庫的對應(yīng)關(guān)系,并且委托相應(yīng)的程序驗證用戶密碼。如果用戶輸入的密碼是正確的,銀行取款機系統(tǒng)就是要求用戶選擇事務(wù)類型(取款、查詢,轉(zhuǎn)賬,
68、存款,修改密碼等)。當(dāng)用戶選擇取款時,銀行取款機系統(tǒng)請求用戶輸入取款額。最后,銀行取款機從現(xiàn)金出口吐出現(xiàn)金,把用戶在數(shù)據(jù)庫的余額改寫,并且把出帳單寫入在數(shù)據(jù)庫的用戶資料上。</p><p> (1)要求用戶一次取款數(shù)額不得大于2000元;(2)要求用戶不能取100元以下款。(3)要求用戶輸入的取款以100的倍數(shù)輸入。(4)要求用戶連續(xù)輸入錯誤密碼次數(shù)不得超過3次。</p><p> 3
69、.2 系統(tǒng)的總體設(shè)計</p><p> 為了分析具備什么特點的系統(tǒng)易于修改,必須先找出修改一個系統(tǒng)的困難來自何處。系統(tǒng)的修改,往往是某一個模塊或某一子系統(tǒng)的細節(jié)的一些變動,或者是子系統(tǒng)組合關(guān)系的某些變動,更常見的是某一局部的數(shù)據(jù)結(jié)構(gòu)或執(zhí)行語句的修改。這種修改的本身并不困難,困難在于找出需要修改的地方和這一修改對其他部分的影響。我們知道,系統(tǒng)各個部分之間存在控制、調(diào)用、數(shù)據(jù)交換等種種聯(lián)系。對某一局部的修改,可能直
70、接或間接地影響到系統(tǒng)的其他部分。因此要進行系統(tǒng)某一個局部的修改,必須十分小心地追蹤這一修改所波及的各個部分。這是系統(tǒng)難于修改的主要原因。為了使系統(tǒng)容易修改,首先要使其容易被理解,需要注意以下幾個問題:</p><p> (1)把系統(tǒng)劃分為一些部分,其中每一部分的功能簡單明確,內(nèi)容簡明易懂,易于修改。我們把這樣的部分稱為模塊。</p><p> (2)系統(tǒng)分成模塊的工作按層次進行。首先,
71、把整個系統(tǒng)看成一個模塊,按功能分解成若干個第一層模塊,這些模塊互相配合,共同完成整個系統(tǒng)的功能。然后按功能再分解第一層的各個模塊。依次下去,直到每個模塊都十分簡單。 </p><p> (3)每一個模塊應(yīng)盡可能獨立,即盡可能減少模塊間的調(diào)用關(guān)系和數(shù)據(jù)交換關(guān)系。當(dāng)然,系統(tǒng)中的模塊不可能與其他模塊沒有聯(lián)系,只是要求這種聯(lián)系盡可能少。</p><p> (4)模塊間的關(guān)系要闡明。這樣,在修改
72、時可以追蹤和控制。</p><p> 總之,一個易于修改的系統(tǒng)應(yīng)該由一些相對獨立、功能單一的模塊按照層次結(jié)構(gòu)組成。這些模塊之間不必要的聯(lián)系都已去掉,而且它們的功能及相互關(guān)系都已闡明。這就是結(jié)構(gòu)化設(shè)計的基本思想。</p><p> 系統(tǒng)的基本模型是用來確定系統(tǒng)的邊界和輸入/ 輸出數(shù)據(jù)流的?;鞠嗤P桶粋€加工,它代表被開發(fā)系統(tǒng)的加工和變換數(shù)據(jù)的整體功能。它的輸入流是該系統(tǒng)的輸入數(shù)據(jù),
73、輸出流式該系統(tǒng)的輸出數(shù)據(jù)。輸入/輸出數(shù)據(jù)時系統(tǒng)與外部世界之間的交互事件的參數(shù)。</p><p> 把基本系統(tǒng)模型中單一的處理框分解成若干個處理框,以描述系統(tǒng)加工,變換數(shù)據(jù)的基本功能就得到功能級數(shù)據(jù)流圖。</p><p> ATM系統(tǒng)的功能級數(shù)據(jù)流圖如圖3.1所示:</p><p> 圖3.1 ATM系統(tǒng)的功能級數(shù)據(jù)流圖</p><p>
74、; 按照系統(tǒng)的要求我們要設(shè)計出用戶易于理解和使用該系統(tǒng)的系統(tǒng)流程圖。當(dāng)用戶登錄該取款機系統(tǒng)之后,該取款機就與用戶交互,以獲取有關(guān)這次事務(wù)的信息,并與數(shù)據(jù)庫交換關(guān)于事務(wù)的信息。首先,銀行取款機要求用戶輸入密碼,接下來銀行取款機把從這張帳號上讀到的信息以及用戶輸入的密碼傳給銀行取款機系統(tǒng),請求系統(tǒng)核對這些信息并處理這次事務(wù)。銀行取款機軟件根據(jù)帳號上的信息確定這次事務(wù)與數(shù)據(jù)庫的對應(yīng)關(guān)系,并且委托相應(yīng)的程序驗證用戶密碼。如果用戶輸入的密碼是正
75、確的,銀行取款機系統(tǒng)就是要求用戶選擇事務(wù)類型。</p><p> 圖3.2 取款機系統(tǒng)流程圖</p><p> 從上面的分析可以看出:系統(tǒng)設(shè)計必須從保證系統(tǒng)的變更性,設(shè)計出一個易于理解、易于維護的系統(tǒng)。</p><p> 3.3系統(tǒng)的功能模塊設(shè)計</p><p> 3.3.1用戶功能模塊的設(shè)計</p><p>
76、 知道系統(tǒng)的程序結(jié)構(gòu)圖之后,接下來就可以根據(jù)結(jié)構(gòu)圖設(shè)計程序的處理過程。設(shè)計程序處理過程的方法就是列出所有操作和條件,并且把它們分配到程序結(jié)構(gòu)圖的適當(dāng)位置。列出運行銀行取款機系統(tǒng)需要的全部操作和條件如下:</p><p><b> ?。?)輸入帳號</b></p><p> ?。?)顯示“卡號錯誤”,并且自動退出</p><p><b&g
77、t; ?。?)繼續(xù)運行</b></p><p> ?。?)顯示“密碼錯誤,請重新輸入密碼”</p><p> ?。?)顯示“賬戶無效”,并且自動退出</p><p> (6)退出現(xiàn)金兌換卡</p><p><b> ?。?)用戶取款</b></p><p><b> ?。?
78、)用戶轉(zhuǎn)帳</b></p><p><b> ?。?)用戶存款</b></p><p> (10)修改用戶密碼</p><p><b> (11)用戶掛失</b></p><p><b> ?。?2)事務(wù)失敗</b></p><p>
79、圖3.3 用戶功能模塊圖</p><p> 用戶當(dāng)進入用戶界面后有六種服務(wù)選項:(1)轉(zhuǎn)賬(2)查詢(3)更改密碼(4)取款等(5)存款(6)掛失。</p><p> 轉(zhuǎn)賬:要輸入即將轉(zhuǎn)賬的賬號,信息確認后才可以輸入轉(zhuǎn)賬的金額數(shù)并確認完成該操作。</p><p> 查詢:在此功能用戶可以查詢賬戶里的余額。</p><p> 存款:在此
80、功能用戶可以存款。</p><p> 改密:用戶任意更改自己想要的賬戶密碼錢。</p><p> 掛失:用戶可凍結(jié)賬號里的</p><p> 取款:使用該系統(tǒng)的最終目標就是“取款”。查詢賬戶里的余額之后余額高于100元以上的話用戶可以按系統(tǒng)要求輸入金額為100的倍數(shù)并完成取款。</p><p> 3.3.2 管理員功能模塊的設(shè)計<
81、;/p><p> 銀行取款機系統(tǒng)應(yīng)該能夠為用戶提供充足的信息和快捷的查詢和取款手段,對用戶來說可以輕松的查詢自己的余額以及給自己充款等,因此管理員對系統(tǒng)可以進行以下幾種操作:</p><p> 1.管理員能夠?qū)崿F(xiàn)對系統(tǒng)維護,賬號的凍結(jié),帳號解凍,賬號注銷等。</p><p><b> 圖3.4管理流程圖</b></p><
82、p> 從上面所描述的流程圖來看管理員主要目的就是給用戶凍結(jié),用戶解凍,用戶注銷。管理員正確輸入賬號和密碼后可選擇關(guān)于對系統(tǒng)服務(wù)類型。</p><p> 管理員主要負責(zé)一種服務(wù)類型:對系統(tǒng)的管理。在系統(tǒng)管理服務(wù)項目里有結(jié)帳,備份和查看交易等服務(wù)項目。</p><p><b> 3.4 數(shù)據(jù)庫設(shè)計</b></p><p> 良好的數(shù)據(jù)
83、庫設(shè)計對于一個高性能的應(yīng)用程序非常重要,就像一個空氣動力裝置對于一輛賽車的重要性一樣。如果一輛汽車沒有平滑的曲線,將會產(chǎn)生阻力從而變慢。關(guān)系沒有經(jīng)過優(yōu)化,數(shù)據(jù)庫無法盡可能高效地運行。應(yīng)該把數(shù)據(jù)庫的關(guān)系和性能看作是規(guī)范化的一部分。</p><p> 3.4.1.Access 語句簡介</p><p> 美國Microsoft公司于1994年推出的微機數(shù)據(jù)庫管理系統(tǒng) 。它具有界面友好、易學(xué)
84、易用、開發(fā)簡單、接口靈活等特點,是典型的新一代桌面數(shù)據(jù)庫管理系統(tǒng)。Access是Office辦公套件中一個極為重要的組成部分。剛開始時微軟公司是將Access單獨作為一個產(chǎn)品進行銷售的,后來微軟發(fā)現(xiàn)如果將Access捆綁在OFFICE中一起發(fā)售,將帶來更加可觀的利潤,于是第一次將Access捆綁到OFFICE97中,成為OFFICE套件中的一個重要成員?,F(xiàn)在它已經(jīng)成為Office辦公套件中不可缺少的部件了。自從1992年開始銷售以來,A
85、ccess 已經(jīng)賣出了超過6000萬份,現(xiàn)在它已經(jīng)成為世界上最流行的桌面數(shù)據(jù)庫管理系統(tǒng)。后來微軟公司通過大量地改進,將Access的新版本功能變得更加強大。不管是處理公司的客戶訂單數(shù)據(jù);管理自己的個人通訊錄;還是大量科研數(shù)據(jù)的記錄和處理,人們都可以利用它來解決大量數(shù)據(jù)的管理工作 。</p><p> 3.4.2.設(shè)計數(shù)據(jù)庫</p><p> 一個規(guī)劃和設(shè)計良好的數(shù)據(jù)庫的優(yōu)點是眾多的,它
86、也證實了這樣一個道理,前期做的工作越多,后面所要做的就越少。在使用數(shù)據(jù)庫的應(yīng)用程序公開發(fā)布之后,還要對數(shù)據(jù)庫進行重新設(shè)計,這是最糟糕的,然而,這確實會發(fā)生,并且代價高昂,所以我們用Access把數(shù)據(jù)庫設(shè)計好。</p><p> 用Access設(shè)計數(shù)據(jù)庫有很多優(yōu)點:</p><p> (1)完善地管理各種數(shù)據(jù)庫對象,具有強大的數(shù)據(jù)組織、用戶管理、安全檢查等功能。 </p>
87、<p> (2)強大的數(shù)據(jù)處理功能,在一個工作組級別的網(wǎng)絡(luò)環(huán)境中,使用Access開發(fā)的多用戶數(shù)據(jù)庫管理系統(tǒng)具有傳統(tǒng)的XBASE(DBASE、FoxBASE的統(tǒng)稱)數(shù)據(jù)庫系統(tǒng)所無法實現(xiàn)的客戶服務(wù)器(Cinet/Server)結(jié)構(gòu)和相應(yīng)的數(shù)據(jù)庫安全機制,Access具備了許多先進的大型數(shù)據(jù)庫管理系統(tǒng)所具備的特征,如事務(wù)處理/出錯回滾能力等。 </p><p> (3)可以方便地生成各種數(shù)據(jù)對象,利用存
88、儲的數(shù)據(jù)建立窗體和報表,可視性好。 </p><p> (4)作為Office套件的一部分,可以與Office集成,實現(xiàn)無縫連接。 </p><p> (5)能夠利用Web檢索和發(fā)布數(shù)據(jù),實現(xiàn)與Internet的連接。 Access主要適用于中小型應(yīng)用系統(tǒng),或作為客戶機/服務(wù)器系統(tǒng)中的客戶端數(shù)據(jù)庫。</p><p> 除了性能以外的問題,就是維護的問題了,數(shù)據(jù)
89、庫應(yīng)該易于維護。這包括只存儲數(shù)量有限的(如果有的話)重復(fù)性數(shù)據(jù)。如果有很多的重復(fù)性數(shù)據(jù),并且這些數(shù)據(jù)的一個實例發(fā)生一次改變(例如,一個名字的改變),這個改變必須對所有的其他的數(shù)據(jù)都進行。為了避免重復(fù),并且增強維護數(shù)據(jù)的能力,我們可以創(chuàng)建可能的值的一個表并使用一個鍵來引用該值。在這種方式中,如果值改變了名字,這個改變只在主表中發(fā)生一次,所有的其他表的引用都保持不變。</p><p><b> 圖3.6數(shù)
90、據(jù)流程圖</b></p><p> 從數(shù)據(jù)流圖可以看出數(shù)據(jù)庫設(shè)計有以下作用:</p><p> (1)首先充分體現(xiàn)系統(tǒng)的需求,數(shù)據(jù)庫是為應(yīng)用服務(wù)的,好的數(shù)據(jù)庫設(shè)計應(yīng)該首先能滿足應(yīng)用系統(tǒng)的業(yè)務(wù)需求,準確的表達數(shù)據(jù)間關(guān)系。</p><p> (2)保證數(shù)據(jù)的準確性和一致性,通過主外鍵、非空、限制、唯一索引等保證數(shù)據(jù)的健壯。</p><
91、;p> (3)提高數(shù)據(jù)的查詢效率,通過合理表結(jié)構(gòu),安排物理存儲分區(qū)、增加索引等方式,提高數(shù)據(jù)的讀取速度,提高查詢效率。</p><p> (4)有好的擴展性,在必要時能根據(jù)需求擴展數(shù)據(jù)結(jié)構(gòu)。</p><p> 因此,在開始編寫一個應(yīng)用程序的代碼之前,請花大量的時間來設(shè)計你的數(shù)據(jù)庫。在本章其余的部分中,我們將學(xué)習(xí)很多有關(guān)關(guān)系和規(guī)范化的內(nèi)容,這是設(shè)計難題中最重要的兩部分。</
92、p><p> 為了使用者更好地理解記錄集在數(shù)據(jù)庫應(yīng)用程序中的使用,下面給出一個具體的窗體實例進行演示。該實例使用 數(shù)據(jù)庫為后臺,該數(shù)據(jù)庫中包含了數(shù)據(jù)表zongbiao,該表的結(jié)構(gòu)和數(shù)據(jù)記錄如圖3.4.1圖所示。</p><p> 表3.4.1數(shù)據(jù)庫表</p><p> 以上表中列出了用戶的所有信息。用戶在使用取款機系統(tǒng)的過程可以查詢,修改密碼,存款自己的以上信息并
93、進行操作。該系統(tǒng)的數(shù)據(jù)庫不僅記錄卡主的信息還要記錄用戶所進行的“取款”,存款,轉(zhuǎn)帳記錄,方便于對用戶以后的操作和需求。</p><p> 第四章 銀行取款機操作軟件的實現(xiàn)</p><p><b> 4.1運行環(huán)境</b></p><p> 為了保證成績查詢系統(tǒng)運行的效率和可靠性,服務(wù)器應(yīng)具有較高的軟硬件配置,客戶端的要求不是很高。其運行要
94、求如下:</p><p> 軟件環(huán)境:數(shù)據(jù)庫:Adaptive Server AnyWhere 。 </p><p> 開發(fā)環(huán)境:Windows98/2000/XP/VISTA等。。</p><p> 客戶端: Windows95/98/2000/XP等。</p><p> 硬件環(huán)境:CPU:P200MMX以上,內(nèi)存:32M以上&
95、lt;/p><p> 4.2用戶功能的實現(xiàn)</p><p> 用戶在使用自動取款機的最終實現(xiàn)的目的就是從自己的賬戶里提取現(xiàn)金。提取現(xiàn)金前查詢余額,讓用戶可以做出正確的選擇,提示用戶輸入取款金額并判斷輸入是否確,如果錯誤提醒用戶并要求重新操作,正確則提醒用戶收取現(xiàn)金;</p><p><b> 圖4.1取款模塊</b></p>&
96、lt;p> 這部分實現(xiàn)的功能是:</p><p> ?。?)確保輸入框不能為空</p><p> ?。?)確保輸入金額是50的倍數(shù)</p><p> ?。?)判斷客戶帳戶里的錢夠不夠</p><p><b> 這部分的難點是:</b></p><p> ?。?)判斷客戶帳戶里的錢夠不夠&
97、lt;/p><p><b> 代碼實現(xiàn):</b></p><p><b> string q3</b></p><p><b> dec q2</b></p><p><b> date t_d</b></p><p> jy
98、shj=now()</p><p> t_d=today()</p><p><b> q3="取款"</b></p><p> q2=dec(sle_1.text)</p><p> select kh,xj into :t1,:xj1 from zongbiao where kh=:t1;
99、</p><p> if xj1<q2 or sle_1.text="" then</p><p> messagebox("提示","余額不足")</p><p> sle_1.setfocus()</p><p><b> else</b>
100、</p><p> if sqlca.sqlcode=0 then </p><p> if left(t1,4)=string(6221) then</p><p> update zongbiao set xj=xj -:q2 where kh=:t1; </p><p> messagebox("提示"
101、,"取款成功")</p><p> insert cunquzhuankuanbiao values(:t1,'',:q2,:q3,:t_d,:jyshj,'');</p><p><b> else</b></p><p> update zongbiao set xj=xj -:q2
102、 -2 where kh=:t1;</p><p> messagebox("提示","取款成功")</p><p> insert cunquzhuankuanbiao values(:t1,'',:q2,:q3,:t_d,:jyshj,2);</p><p><b> end if<
103、/b></p><p> open(shifoudayingjiemian)</p><p> close(qukuanjiemian)</p><p><b> end if</b></p><p><b> end if</b></p><p> 4.3管
104、理員功能的實現(xiàn)</p><p> 在圖3.4圖的流程結(jié)果來看管理員最終實現(xiàn)的主要目的就是對系統(tǒng)備份,結(jié)帳,查看交易,因為系統(tǒng)一般最需求的服務(wù)就是備份,結(jié)帳,查看交易。以下圖是管理員給系統(tǒng)進行備份,結(jié)帳,查看交易的界面圖:(如圖4.2所示)</p><p><b> 圖4.2充幣界面</b></p><p><b> 代碼實現(xiàn):&
105、lt;/b></p><p><b> 備份的實現(xiàn)代碼</b></p><p> string backup</p><p> backup = "BACKUP DATABASE DIRECTORY '" + sle_1.text + "'"</p><p&
106、gt; execute immediate :backup;</p><p> if sqlca.sqlcode <> 0 then</p><p> messagebox("提示信息","數(shù)據(jù)庫備份失敗")//執(zhí)行失敗</p><p> open(beifen)</p><p>&
107、lt;b> else</b></p><p> messagebox("提示信息","數(shù)據(jù)庫備份成功")//執(zhí)行成功</p><p> open(guanliyuanjiemian)</p><p> close(beifen)</p><p><b> end i
108、f</b></p><p><b> 結(jié)帳的實現(xiàn)代碼</b></p><p><b> date m1</b></p><p> integer m2,m3,m4</p><p> jyshj=now()</p><p> m1=today()</
109、p><p> m2=integer(sle_1.text)</p><p> m2=integer(sle_2.text)</p><p> m2=integer(sle_3.text)</p><p> select sum(jyje) into :m2 from cunquzhuankuanbiao where jyrq=today(
110、) and jylx='取款';</p><p> sle_1.text=string(m2)</p><p> select sum(jyje) into :m3 from cunquzhuankuanbiao where jyrq=today() and jylx='存款';</p><p> sle_2.text=stri
111、ng(m3)</p><p> select sum(jyje) into :m4 from cunquzhuankuanbiao where jyrq=today() and jylx='轉(zhuǎn)賬';</p><p> sle_3.text=string(m4)</p><p> insert jiezhangbiao values(:m2,:m
112、3,:m4,:m1,:jyshj);</p><p> 第5章 系統(tǒng)測試與維護</p><p><b> 5.1系統(tǒng)測試</b></p><p> 軟件測試是伴隨著軟件的產(chǎn)生而產(chǎn)生的,有了軟件生產(chǎn)和運行就必然有軟件測試。早期的軟件開發(fā)過程中,測試的含義比較狹窄,將測試等同于“調(diào)試”,目的是糾正軟件中已經(jīng)知道的故障,常常由開發(fā)人員自己完成這
113、部分的工作。對測試的投入極少,測試介入得也晚,常常是等到形成代碼,產(chǎn)品已經(jīng)基本完成時才進行測試。</p><p> 系統(tǒng)測試是對整體性能的測試,主要解決各子系統(tǒng)之間的數(shù)據(jù)通信和數(shù)據(jù)共享問題以及檢測系統(tǒng)是否達到用戶的實際要求,系統(tǒng)測試的依據(jù)是系統(tǒng)分析報告。系統(tǒng)測試應(yīng)在系統(tǒng)的整個范圍內(nèi)進行,這種測試不只對軟件進行,而是對構(gòu)成系統(tǒng)的硬、軟件一起進行。系統(tǒng)測試與建構(gòu)同時進行或略慢。系統(tǒng)測試需要確認從頭到尾的功能正常才算
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 自動取款機畢業(yè)設(shè)計---銀行取款機操作軟件的設(shè)計
- 自動取款機畢業(yè)論文
- atm自動取款機系統(tǒng)設(shè)計
- atm自動取款機模擬設(shè)計
- 自動取款機終端系統(tǒng)設(shè)計.doc
- 股票--取款機
- atm銀行自動取款機c程序
- jx0695-自動取款機終端系統(tǒng)設(shè)計
- atm自動取款機系統(tǒng)需求分析
- atm自動取款機用例圖
- 銀行atm自動取款機系統(tǒng)課程設(shè)計
- 銀行atm自動取款機系統(tǒng)課程設(shè)計
- 基于單片機自動取款機系統(tǒng)課程設(shè)計
- 畢業(yè)論文---基于wcf的atm自動取款機系統(tǒng)
- 銀行自動存取款機(atm機)怎樣存錢
- atm自動存取款機服務(wù)指南
- c_課程設(shè)計—自動取款機模擬軟件設(shè)計
- atm自動取款機系統(tǒng)課程設(shè)計說明書
- c_課程設(shè)計—自動存取款機軟件設(shè)計
- 基于自動取款機視頻的人臉偽裝檢測.pdf
評論
0/150
提交評論