版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 可視化編程技術(shù) 課程設(shè)計(jì)(論文)</p><p> 題目: 銀行存取款管理系統(tǒng) </p><p> 院(系): 軟件學(xué)院 </p><p> 專業(yè)班級(jí): </p><p> 學(xué) 號(hào): </p>&l
2、t;p> 學(xué)生姓名: </p><p> 指導(dǎo)教師: </p><p> 教師職稱: 助 教 </p><p> 起止時(shí)間:2012.11.26至2012.12.9 </p><p> 課程設(shè)計(jì)(論文)任務(wù)及評(píng)語(yǔ)</p><p>
3、; 院(系):軟件學(xué)院 教研室:軟件教研窒</p><p><b> 目 錄</b></p><p> 第1章 課程設(shè)計(jì)目的與要求1</p><p> 1.1 課程設(shè)計(jì)目的1</p><p> 1.2 課程設(shè)計(jì)的實(shí)驗(yàn)環(huán)境1<
4、;/p><p> 1.3 課程設(shè)計(jì)的預(yù)備知識(shí)1</p><p> 1.4 課程設(shè)計(jì)要求1</p><p> 第2章 課程設(shè)計(jì)內(nèi)容2</p><p> 2.1 系統(tǒng)功能設(shè)計(jì)2</p><p> 2.2 系統(tǒng)詳細(xì)設(shè)計(jì)</p><p> 2.3 系統(tǒng)運(yùn)行與測(cè)試</p>
5、<p> 第3章 課程設(shè)計(jì)總結(jié)</p><p><b> 參考文獻(xiàn)</b></p><p><b> 課程設(shè)計(jì)目的與要求</b></p><p> 1.1 課程設(shè)計(jì)目的</p><p> 本課程的課程設(shè)計(jì)實(shí)際是學(xué)生學(xué)習(xí)完《可視化編程技術(shù)》課程后,進(jìn)行的一次全面的綜合訓(xùn)練,其
6、目的在于加深對(duì)可視化編程技術(shù)基本知識(shí)的理解,掌握運(yùn)用VB開(kāi)發(fā)應(yīng)用程序的基本方法及基本技巧。</p><p> 1.2 課程設(shè)計(jì)的實(shí)驗(yàn)環(huán)境</p><p> 硬件要求能運(yùn)行Windows 9.X操作系統(tǒng)的微機(jī)系統(tǒng)。</p><p> 軟件:Microsoft Visual Basic 6.0</p><p> Microsoft Acc
7、ess 2003</p><p> 1.3 課程設(shè)計(jì)的預(yù)備知識(shí)</p><p> 熟悉Visual Basic 6.0程序設(shè)計(jì)的基本語(yǔ)法知識(shí)及常用技巧。</p><p> 1.4 課程設(shè)計(jì)要求</p><p> 按課程設(shè)計(jì)指導(dǎo)書(shū)提供的課題,每個(gè)小組設(shè)計(jì)一個(gè)完整的管理系統(tǒng)應(yīng)用程序。要求根據(jù)規(guī)定設(shè)計(jì)系統(tǒng)的具體要求,按照應(yīng)用程序的設(shè)計(jì)步驟和
8、VB的基本知識(shí)應(yīng)用程序的分析與實(shí)現(xiàn)。應(yīng)根據(jù)基本學(xué)時(shí)分配合理安排設(shè)計(jì)時(shí)間,并獨(dú)立完成各方面的設(shè)計(jì)。選擇同一題目的同學(xué),可以共同協(xié)作完成一個(gè)應(yīng)用程序的開(kāi)發(fā)任務(wù)。要求書(shū)寫(xiě)詳細(xì)的設(shè)計(jì)說(shuō)明書(shū),對(duì)有復(fù)雜的代碼段和程序段的部分,應(yīng)畫(huà)出程序流程圖,寫(xiě)出全部的代碼。在界面設(shè)計(jì)中,需畫(huà)出每個(gè)窗體的布局,進(jìn)行屬性說(shuō)明,杜絕雷同。</p><p><b> 課程設(shè)計(jì)內(nèi)容</b></p><p&
9、gt;<b> 2.1系統(tǒng)功能設(shè)計(jì)</b></p><p> 2.1.1 系統(tǒng)功能以VB+Access組合,實(shí)現(xiàn)銀行系統(tǒng)活期存取款管理,要按現(xiàn)有的實(shí)際利率計(jì)算利息,儲(chǔ)戶數(shù)據(jù)表至少應(yīng)包括:帳號(hào)、用戶名稱、身份證號(hào)、密碼、存取款日期、支出或存入金額(存入為正,支出為負(fù),初值為0)、結(jié)余金額(初值為0)等,限在取款時(shí)才計(jì)算利息并轉(zhuǎn)入存款本金。在數(shù)據(jù)表中每一次存取款都重新生成一條新記錄,這樣數(shù)據(jù)
10、表中保存著歷史存取款信息,可供查詢。</p><p><b> 分析</b></p><p> 模擬銀行銀行存取款管路程序,主要有“添加刪除儲(chǔ)戶信息”,“查詢修改出乎信息”,“錄入用戶存取款記錄”,“計(jì)算儲(chǔ)戶利息”共四項(xiàng)。系統(tǒng)可在用戶取款時(shí)計(jì)算其活期存款利息(每天按0.2%計(jì)算利息)。</p><p><b> 要求:</
11、b></p><p> ?。?)在Access中創(chuàng)建“儲(chǔ)戶信息”表,由所有儲(chǔ)戶信息構(gòu)成,此表結(jié)構(gòu)定義如下:賬號(hào),用戶名稱,身份證號(hào),密碼,結(jié)余金額,存取款日期,存入金額,取出金額。</p><p> ?。?)能隨時(shí)添加新儲(chǔ)戶或刪除原有儲(chǔ)戶。</p><p> ?。?)能隨時(shí)修改已存入儲(chǔ)戶的信息。</p><p> ?。?)能隨時(shí)查看指定
12、儲(chǔ)戶的信息(包括其存取款記錄)</p><p> ?。?)能將儲(chǔ)戶當(dāng)前存款金額加入儲(chǔ)戶本金。</p><p> ?。?)能在儲(chǔ)戶取款時(shí)計(jì)算利息并存入本金。</p><p> 2.1.2 系統(tǒng)功能模塊設(shè)計(jì)</p><p> 圖2.1系統(tǒng)功能模塊圖</p><p><b> 2.2系統(tǒng)詳細(xì)設(shè)計(jì)</b&
13、gt;</p><p> 2.2.1銀行存取款管理系統(tǒng)模塊設(shè)計(jì)</p><p> 1.界面設(shè)計(jì)(1)基本原理:建立程序設(shè)計(jì)與Access數(shù)據(jù)庫(kù)連接,用SQL語(yǔ)句實(shí)現(xiàn)程序?qū)?shù)據(jù)庫(kù)查找,添加,刪除,更改。</p><p> 查找:調(diào)用ADO控件的RecrodSource屬性,確定具體可訪問(wèn)數(shù)據(jù)來(lái)源,用select語(yǔ)句進(jìn)行查找。</p><p&g
14、t; 添加:調(diào)用AddNew方法,在記錄集中加入一條新數(shù)據(jù),再用Update方法更新修改。</p><p> 刪除:調(diào)用Delete方法,刪除記錄集中已選定的一條數(shù)據(jù)。</p><p> 修改:用ADO控件將命令文本與數(shù)據(jù)庫(kù)中其對(duì)應(yīng)的數(shù)據(jù)綁定,在文本框中修改,并用Update更新,對(duì)數(shù)據(jù)庫(kù)數(shù)據(jù)進(jìn)行修改。</p><p><b> ?。?)總體設(shè)計(jì):&
15、lt;/b></p><p><b> 2.代碼設(shè)計(jì)</b></p><p> Private Sub chaxun_Click() '查詢信息</p><p> Form3.Show</p><p><b> End Sub</b></p><p>
16、 Private Sub chuhu_Click() '添加新儲(chǔ)戶</p><p> Form2.Show</p><p><b> End Sub</b></p><p> Private Sub cunkuan_Click() '存取款</p><p> Form5.Show</p>
17、;<p><b> End Sub</b></p><p> Private Sub tuichu_Click() '退出</p><p><b> End</b></p><p><b> End Sub</b></p><p> Privat
18、e Sub xiugai_Click() '修改儲(chǔ)戶信息</p><p> Form4.Show</p><p><b> End Sub</b></p><p> 2.2.2銀行存取款管理系統(tǒng)模塊設(shè)計(jì)</p><p><b> 1.界面設(shè)計(jì)</b></p><p
19、> 1)使程序與數(shù)據(jù)庫(kù)連接,實(shí)現(xiàn)程序?qū)?shù)據(jù)庫(kù)的修改與查詢:</p><p> 利用ADO控件建立聯(lián)系,通過(guò)修改命令文本框的DataSource和DataField屬性,使命令文本框與數(shù)據(jù)庫(kù)綁定;通過(guò)修改DataGrid的DataSource屬性,使數(shù)據(jù)庫(kù)的所有信息顯示在窗體中。</p><p> ?。?)通過(guò)對(duì)主窗體菜單的Click打開(kāi)“添加刪除新儲(chǔ)戶”、“儲(chǔ)戶信息”、“存款與取
20、款”窗體。</p><p><b> 2.代碼設(shè)計(jì)</b></p><p> Private Sub Command1_Click(Index As Integer)</p><p> Dim ask As Integer</p><p> Select Case Index</p><p&g
21、t; Case 0 '添加</p><p> Adodc1.Recordset.AddNew '添加新用戶</p><p> Case 1 '刪除</p><p> ask = MsgBox("是否刪除已有儲(chǔ)戶信息!", vbYesNo)</p><p> If ask = 6 Then&
22、lt;/p><p> Adodc1.Recordset.Delete '刪除當(dāng)前數(shù)據(jù)</p><p> Adodc1.Recordset.MoveNext '下一條記錄</p><p> If Adodc1.Recordset.EOF Then Adodc1.Recordset.MoveLast '如果讀 到數(shù)據(jù)尾部,指針
23、定義到最后一條記錄</p><p><b> End If</b></p><p> Case 2 '更新</p><p> Adodc1.Recordset.Update '確定當(dāng)前修改并保存到數(shù)據(jù)源</p><p> Case 3 '放棄</p><p> A
24、dodc1.Recordset.CancelUpdate '取消Update對(duì)記錄的修改</p><p> End Select</p><p><b> End Sub</b></p><p> Private Sub Command2_Click(Index As Integer)</p><p>
25、Select Case Index</p><p> Case 0 '首記錄</p><p> Adodc1.Recordset.MoveFirst '讀取數(shù)據(jù)庫(kù)首記錄</p><p> Case 1 '上一條</p><p> Adodc1.Recordset.MovePrevious</p>
26、<p> If Adodc1.Recordset.BOF Then Adodc1.Recordset.MoveFirst '讀取上一條記錄</p><p> Case 2 '下一條</p><p> Adodc1.Recordset.MoveNext</p><p> If Adodc1.Recordset.EOF Then Ado
27、dc1.Recordset.MoveLast '讀取下一條記錄</p><p> Case 3 '尾記錄</p><p> Adodc1.Recordset.MoveLast '讀取數(shù)據(jù)庫(kù)尾記錄</p><p> End Select</p><p><b> End Sub</b><
28、;/p><p> Private Sub Command3_Click() '結(jié)束</p><p> Unload Me '結(jié)束當(dāng)前窗體</p><p> Form1.Show '返回主窗體</p><p><b> End Sub</b></p><p> 窗體-儲(chǔ)
29、戶添加與刪除:</p><p> ?。?)查詢儲(chǔ)戶信息是SQL語(yǔ)句在數(shù)據(jù)庫(kù)中按用戶名稱查詢其身份信息和存取款信息。</p><p> Select<字段名表>From<表名>Where<條件></p><p><b> 程序段如下:</b></p><p> Private Su
30、b Command1_Click() '查詢</p><p> If Text1 > "" Then '設(shè)置數(shù)據(jù)源</p><p> Adodc1.RecordSource = "Select * From 儲(chǔ)戶信息 Where 用戶名稱 ='" & Text1 & "'&quo
31、t; '確定訪問(wèn)數(shù)據(jù)來(lái)源,并選擇出用戶名為文本框中名稱的所有數(shù)據(jù)</p><p><b> Else</b></p><p> Adodc1.RecordSource = "Select * From 儲(chǔ)戶信息" '對(duì)于未指定信息查詢</p><p><b> End If</b>
32、</p><p> Adodc1.Refresh '刷新ADO控件的連接屬性并重新建立記錄集對(duì)象</p><p><b> End Sub</b></p><p><b> 窗體-查詢:</b></p><p> ?。?)修改儲(chǔ)戶信息是對(duì)數(shù)據(jù)庫(kù)中儲(chǔ)戶的身份信息進(jìn)行修改。</p&g
33、t;<p><b> 程序段如下:</b></p><p> Private Sub Command1_Click(Index As Integer)</p><p> Select Case Index</p><p> Case 0 '首記錄</p><p> Adodc1.Recor
34、dset.MoveFirst '讀取數(shù)據(jù)庫(kù)第一條記錄</p><p> Case 1 '上一條</p><p> Adodc1.Recordset.MovePrevious '讀取上一條記錄</p><p> If Adodc1.Recordset.BOF Then Adodc1.Recordset.MoveFirst '如果當(dāng)
35、前為數(shù)據(jù)源開(kāi)始,指針定義到第一條數(shù)據(jù)</p><p> Case 2 '下一條</p><p> Adodc1.Recordset.MoveNext '讀取下一條記錄</p><p> If Adodc1.Recordset.EOF Then Adodc1.Recordset.MoveLast '如果當(dāng)前為數(shù)據(jù)源尾部,指針定義到最后一條
36、數(shù)據(jù)</p><p> Case 3 '尾記錄</p><p> Adodc1.Recordset.MoveLast '讀取數(shù)據(jù)庫(kù)最后一條記錄</p><p> End Select</p><p><b> End Sub</b></p><p> Private Su
37、b Command2_Click() '更新</p><p> Adodc1.Recordset.Update '確定修改并保存到數(shù)據(jù)源</p><p><b> End Sub</b></p><p> Private Sub Command3_Click() '返回</p><p>
38、Unload Me '關(guān)閉當(dāng)前窗體</p><p> Form1.Show '返回主窗體</p><p><b> End Sub</b></p><p> 窗體-修改儲(chǔ)戶信息:</p><p> ?。?)存款與取款是新加一條關(guān)于當(dāng)前儲(chǔ)戶的一條存款或取款信息。</p><p>
39、;<b> 程序段如下:</b></p><p> Private Sub Command1_Click() '確定</p><p> Adodc1.Recordset.Update '保存修改</p><p><b> End Sub</b></p><p> Priva
40、te Sub Command2_Click() '返回</p><p> Unload Me '關(guān)閉當(dāng)前窗體</p><p> Form1.Show '返回主窗體</p><p><b> End Sub</b></p><p> Private Sub Command3_Click()
41、'輸入</p><p> Adodc1.Recordset.AddNew '添加新數(shù)據(jù)</p><p><b> End Sub</b></p><p> Private Sub Command4_Click() '存入</p><p> Dim a, b As Long, c% '
42、;定義a、b為長(zhǎng)整型</p><p> b = Text1.Text '將賬號(hào)賦值到b</p><p> Adodc1.Recordset.MoveFirst</p><p> Adodc1.Recordset.Find "賬號(hào)='" & b & "'" '從記錄首部開(kāi)始查
43、找賬號(hào)為b的那一條數(shù)據(jù)</p><p> If Adodc1.Recordset.EOF Then</p><p> MsgBox "無(wú)此賬號(hào)!", , "提示" '如果查找到記錄尾部還是沒(méi)有此賬號(hào),則彈出提示窗口</p><p><b> Else</b></p><p
44、> a = Adodc1.Recordset.Fields("結(jié)余金額") '在已找到那條數(shù)據(jù)中找到結(jié)余金額數(shù)據(jù),并將此數(shù)據(jù)賦值給a</p><p> Text8.Text = Val(Text5.Text) + a '當(dāng)前存入金額加此賬戶上一次的結(jié)余金額計(jì)算出新的結(jié)余金額</p><p><b> End If</b>
45、</p><p><b> End Sub</b></p><p> Private Sub Command5_Click() '取出</p><p> Dim x, y, z, m&, e, f As Long</p><p> Dim n As Date '定義n、p為日期,形式為“Y
46、YYY-MM-DD”</p><p> Dim p As Date</p><p> m = Text1.Text '將賬號(hào)賦值到m</p><p> Adodc1.Recordset.MoveFirst</p><p> Adodc1.Recordset.Find "賬號(hào)='" & m &
47、amp; "'" '從記錄首部開(kāi)始查找賬號(hào)為m的那一條數(shù)據(jù)</p><p> n = Adodc1.Recordset.Fields("存取款日期") '在已找到那條數(shù)據(jù)中找到存取從記錄首部開(kāi)始查找賬號(hào)為m的那一條數(shù)據(jù)</p><p> p = Text7.Text '將當(dāng)前取款日期賦值給p</p&g
48、t;<p> z = DateDiff("d", n, p) '計(jì)算當(dāng)前取款日期與上一次存取款日期的天數(shù)之差</p><p> Adodc1.Recordset.Find "賬號(hào)='" & m & "'" '從記錄首部開(kāi)始查找賬號(hào)為m的那一條數(shù)據(jù)</p><p>
49、 f = Adodc1.Recordset.Fields("結(jié)余金額") '在已找到那條數(shù)據(jù)中找到結(jié)余金額數(shù)據(jù),并將此數(shù)據(jù)賦值給f</p><p> x = Val(Text6.Text) '將當(dāng)前取出金額賦值給x,將文本框中的數(shù)字字符串改為數(shù)值</p><p> y = f * 0.0002 * z + f - x '計(jì)算利息并將利息假如
50、本金再減去取出金額計(jì)算出此次取款的結(jié)余金額,將結(jié)余金額賦值給y</p><p> Text8.Text = y '將y值寫(xiě)入到第八個(gè)文本框</p><p><b> End Sub</b></p><p><b> 窗體-存款與取款:</b></p><p><b> 完整
51、的源程序</b></p><p> Form1:(主窗體)</p><p> Private Sub chaxun_Click() </p><p> Form3.Show</p><p><b> End Sub</b></p><p> Private Sub chuhu
52、_Click()</p><p> Form2.Show</p><p><b> End Sub</b></p><p> Private Sub cunkuan_Click() </p><p> Form5.Show</p><p><b> End Sub</b&
53、gt;</p><p> Private Sub tuichu_Click() </p><p><b> End</b></p><p><b> End Sub</b></p><p> Private Sub xiugai_Click()</p><p> F
54、orm4.Show</p><p><b> End Sub</b></p><p> Form2:(添加刪除儲(chǔ)戶)</p><p> Private Sub Command1_Click(Index As Integer)</p><p> Dim ask As Integer</p><p
55、> Select Case Index</p><p><b> Case 0</b></p><p> Adodc1.Recordset.AddNew </p><p><b> Case 1</b></p><p> ask = MsgBox("是否刪除已有儲(chǔ)戶信息!&
56、quot;, vbYesNo)</p><p> If ask = 6 Then</p><p> Adodc1.Recordset.Delete </p><p> Adodc1.Recordset.MoveNext </p><p> If Adodc1.Recordset.EOF Then Adodc1.Recordset.Mo
57、veLast </p><p><b> End If</b></p><p><b> Case 2</b></p><p> Adodc1.Recordset.Update </p><p> Case 3 '放棄</p><p> Adodc1.Rec
58、ordset.CancelUpdate </p><p> End Select</p><p><b> End Sub</b></p><p> Private Sub Command2_Click(Index As Integer)</p><p> Select Case Index</p>
59、<p> Case 0 </p><p> Adodc1.Recordset.MoveFirst</p><p><b> Case 1</b></p><p> Adodc1.Recordset.MovePrevious</p><p> If Adodc1.Recordset.BO
60、F Then Adodc1.Recordset.MoveFirst </p><p><b> Case 2</b></p><p> Adodc1.Recordset.MoveNext</p><p> If Adodc1.Recordset.EOF Then Adodc1.Recordset.MoveLast </p>
61、<p><b> Case 3</b></p><p> Adodc1.Recordset.MoveLast </p><p> End Select</p><p><b> End Sub</b></p><p> Private Sub Command3_Click() &
62、lt;/p><p> Unload Me </p><p> Form1.Show </p><p><b> End Sub</b></p><p> Form3:(查詢)</p><p> Private Sub Command1_Click() </p><p&
63、gt; If Text1 > "" Then </p><p> Adodc1.RecordSource = "Select * From 儲(chǔ)戶信息 Where 用戶名稱 ='" & Text1 & "'" </p><p><b> Else</b><
64、/p><p> Adodc1.RecordSource = "Select * From 儲(chǔ)戶信息" </p><p><b> End If</b></p><p> Adodc1.RefreshEnd Sub</p><p> Form4:(修改)</p><p>
65、Private Sub Command1_Click(Index As Integer)</p><p> Select Case Index</p><p><b> Case 0 </b></p><p> Adodc1.Recordset.MoveFirst</p><p><b> Case 1
66、</b></p><p> Adodc1.Recordset.MovePrevious </p><p> If Adodc1.Recordset.BOFThenAdodc1.Recordset.MoveFirs</p><p> Case 2 Adodc1.Recordset.MoveNext If Adodc1.Recordset.EOF Th
67、en Adodc1.Recordset.MoveLast </p><p><b> Case 3</b></p><p> Adodc1.Recordset.MoveLast </p><p> End Select</p><p><b> End Sub</b></p
68、><p> Private Sub Command2_Click() </p><p> Adodc1.Recordset.Update </p><p><b> End Sub</b></p><p> Private Sub Command3_Click() </p><p><b
69、> Unload Me</b></p><p> Form1.Show </p><p><b> End Sub</b></p><p> Form5:(存款與取款)</p><p> Private Sub Command1_Click()</p><p> Ad
70、odc1.Recordset.Update</p><p><b> End Sub</b></p><p> Private Sub Command2_Click()</p><p><b> Unload Me</b></p><p> Form1.Show</p><
71、;p><b> End Sub</b></p><p> Private Sub Command3_Click()</p><p> Adodc1.Recordset.AddNew</p><p><b> End Sub</b></p><p> Private Sub Comma
72、nd4_Click()</p><p> Dim a, b As Long, c%</p><p> b = Text1.Text</p><p> Adodc1.Recordset.MoveFirst</p><p> Adodc1.Recordset.Find "賬號(hào)='" & b &
73、"'"</p><p> If Adodc1.Recordset.EOF Then</p><p> MsgBox "無(wú)此賬號(hào)!", , "提示"</p><p><b> Else</b></p><p> a = Adodc1.Records
74、et.Fields("結(jié)余金額")</p><p> Text8.Text = Val(Text5.Text) + a</p><p><b> End If</b></p><p><b> End Sub</b></p><p> Private Sub Comman
75、d5_Click()</p><p> Dim x, y, z, m&, e, f As Long</p><p> Dim n As Date</p><p> Dim p As Date</p><p> m = Text1.Text</p><p> Adodc1.Recordset.MoveF
76、irst</p><p> Adodc1.Recordset.Find "賬號(hào)='" & m & "'"</p><p> n = Adodc1.Recordset.Fields("存取款日期")</p><p> p = Text7.Text</p>&
77、lt;p> z = DateDiff("d", n, p)</p><p> Adodc1.Recordset.Find "賬號(hào)='" & m & "'"</p><p> f = Adodc1.Recordset.Fields("結(jié)余金額")</p>
78、<p> x = Val(Text6.Text)</p><p> y = f * 0.0002 * z + f - x</p><p> Text8.Text = y</p><p><b> End Sub</b></p><p> 2.2.3 數(shù)據(jù)庫(kù)訪問(wèn)技術(shù)</p><p&
79、gt; 在ASP中可以通過(guò)三種方式訪問(wèn)數(shù)據(jù)庫(kù):</p><p> 1、IDC(Internet Database Connector)方式;</p><p> 2、ADO(ActiveX Data Objects)方式;</p><p> 3、RDS(Remote Data Service)方式。</p><p> 這三種訪問(wèn)方式對(duì)
80、數(shù)據(jù)庫(kù)的訪問(wèn)都是由Internet Information Server完成的。通過(guò)Web瀏覽器用HTTP協(xié)議向IIS(Internet信息服務(wù)器)發(fā)送請(qǐng)求,IIS執(zhí)行對(duì)數(shù)據(jù)庫(kù)的訪問(wèn),并返回一個(gè)HTML格式的文檔響應(yīng)。下面分別說(shuō)明:</p><p> 1、IDC(Internet數(shù)據(jù)庫(kù)接口)</p><p> IDC是一個(gè)傳統(tǒng)的數(shù)據(jù)庫(kù)查詢工具,用來(lái)定義和執(zhí)行數(shù)據(jù)庫(kù)查詢的SQL命令,并向
81、瀏覽器返回一個(gè)指定數(shù)據(jù)格式的頁(yè)面。使用IDC訪問(wèn)數(shù)據(jù)庫(kù)最大的特點(diǎn)是簡(jiǎn)單,幾乎不需要編程就能實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的訪問(wèn)。</p><p> IDC使用兩種文件來(lái)控制如何訪問(wèn)數(shù)據(jù)庫(kù)以及如何創(chuàng)建返回的Web頁(yè)面:IDC (.idc)文件和HTML擴(kuò)展(.htx)文件。.idc文件必須包括ODBC數(shù)據(jù)源(Datasource)、HTML擴(kuò)展文件的文件名(Template)以及要執(zhí)行的SQL語(yǔ)句(SQLStatement)。此外
82、還有許多可選字段,可以根據(jù)需要選用。</p><p> .htx文件是帶有用<%%>或<!--%%-->括起來(lái)的附加標(biāo)記的HTML文檔,IDC用這些標(biāo)記將動(dòng)態(tài)數(shù)據(jù)添加到文檔中。在.htx文件中有六個(gè)關(guān)鍵字(begindetail、enddetail、if、else、endif和"%z"),用來(lái)控制數(shù)據(jù)庫(kù)中的數(shù)據(jù)怎樣和.htx文件中HTML格式進(jìn)行合并。數(shù)據(jù)庫(kù)列名說(shuō)明H
83、TML文檔中什么數(shù)據(jù)被返回。</p><p> 要執(zhí)行IDC查詢,通常的做法是在HTML文件中嵌入一個(gè).idc文件的連接。例如,我們可用下面的HTML語(yǔ)句向Web服務(wù)器發(fā)出請(qǐng)求,要求執(zhí)行idctest.idc文件:</p><p> <A HREF="http://LocalHost/idctest/idctest/idctest.idc">查詢<
84、/A> 當(dāng)Web服務(wù)器接到請(qǐng)求后,就調(diào)用Httpodbc.dll(IDC),與一定的數(shù)據(jù)源相連并把SQL命令傳給數(shù)據(jù)庫(kù)。當(dāng)SQL語(yǔ)句被執(zhí)行后,IDC把返回的數(shù)據(jù)融入到.htx文件中。IDC再把這個(gè)文檔返回給Web服務(wù)器,Web服務(wù)器再返回給瀏覽器。</p><p> 2、ADO(ActiveX數(shù)據(jù)對(duì)象) ADO訪問(wèn)數(shù)據(jù)庫(kù),更像編寫(xiě)數(shù)據(jù)庫(kù)應(yīng)用程序。它把絕大部分的數(shù)據(jù)庫(kù)操作封裝在七個(gè)對(duì)象中,在AS
85、P頁(yè)面中編程調(diào)用這些對(duì)象執(zhí)行相應(yīng)的數(shù)據(jù)庫(kù)操作。</p><p> ADO是ASP技術(shù)的核心之一,它集中體現(xiàn)了ASP技術(shù)豐富而靈活的數(shù)據(jù)庫(kù)訪問(wèn)功能。ADO建立了基于Web方式訪問(wèn)數(shù)據(jù)庫(kù)的腳本編寫(xiě)模型,不僅支持任何大型數(shù)據(jù)庫(kù)的核心功能,而且支持許多數(shù)據(jù)庫(kù)所專有的特性。</p><p> ADO使用本機(jī)數(shù)據(jù)源,通過(guò)ODBC訪問(wèn)數(shù)據(jù)庫(kù)。這些數(shù)據(jù)庫(kù)可以是關(guān)系型數(shù)據(jù)庫(kù)、文本型數(shù)據(jù)庫(kù)、層次型數(shù)據(jù)庫(kù)或
86、者任何支持ODBC的數(shù)據(jù)庫(kù)。主要優(yōu)點(diǎn)是易用、高速、占用內(nèi)存和磁盤(pán)空間少,所以非常適合于作為服務(wù)器端的數(shù)據(jù)庫(kù)訪問(wèn)技術(shù)。相對(duì)于訪問(wèn)數(shù)據(jù)庫(kù)的CGI程序而言,它是多線程的,在出現(xiàn)大量并發(fā)請(qǐng)求時(shí),也同樣可以保持服務(wù)器的運(yùn)行效率,并且通過(guò)連接池(Connection Pool)技術(shù)以及對(duì)數(shù)據(jù)庫(kù)連接資源的完全控制,提供與遠(yuǎn)程數(shù)據(jù)庫(kù)的高效連接與訪問(wèn),同時(shí)它還支持事務(wù)處理(Transaction),以開(kāi)發(fā)高效率、高可靠性的數(shù)據(jù)庫(kù)應(yīng)用程序。 一般使用
87、ADO訪問(wèn)數(shù)據(jù)庫(kù)的ASP腳本程序應(yīng)該使用Connection對(duì)象建立并管理與遠(yuǎn)程數(shù)據(jù)庫(kù)的連接,用Command對(duì)象提供靈活的查詢,用Recordset對(duì)象訪問(wèn)數(shù)據(jù)庫(kù)查詢所返回的結(jié)果。這三者是ADO的最核心的對(duì)象。</p><p> 與IDC一樣,運(yùn)行該數(shù)據(jù)庫(kù)訪問(wèn)腳本的通常做法是在HTML文件中嵌入一個(gè).asp文件的連接。如,用HTML語(yǔ)句向Web服務(wù)器發(fā)出請(qǐng)求,要求執(zhí)行intels.asp文件:</p&g
88、t;<p> <A HREF="http://LocalHost/idctest/ado/intels.asp">查詢</A> 3、RDS(遠(yuǎn)程數(shù)據(jù)服務(wù)) RDS在IIS 4.0中,與ADO集成到一起,使用同樣的編程模型,提供訪問(wèn)遠(yuǎn)程數(shù)據(jù)庫(kù)的功能。ADO雖然能夠提供非常強(qiáng)大的數(shù)據(jù)庫(kù)訪問(wèn)功能,但是它不支持?jǐn)?shù)據(jù)遠(yuǎn)程操作(Data Rem
89、oting)。它只能執(zhí)行查詢并返回?cái)?shù)據(jù)庫(kù)查詢的結(jié)果,這種結(jié)果是靜態(tài)的,服務(wù)器上的數(shù)據(jù)庫(kù)與客戶端看到的數(shù)據(jù)沒(méi)有活的連接關(guān)系。如果用戶端需要修改數(shù)據(jù)庫(kù),就必須構(gòu)造修改數(shù)據(jù)的SQL語(yǔ)句,并執(zhí)行相應(yīng)的查詢。而RDS支持?jǐn)?shù)據(jù)遠(yuǎn)程操作。它不僅能執(zhí)行查詢并返回?cái)?shù)據(jù)庫(kù)查詢結(jié)果,而且可以把服務(wù)器端的數(shù)據(jù)“搬到”用戶端修改,并調(diào)用一個(gè)數(shù)據(jù)庫(kù)更新命令,將用戶端修改的數(shù)據(jù)寫(xiě)回?cái)?shù)據(jù)庫(kù),象使用本地?cái)?shù)據(jù)庫(kù)一樣。</p><p> RDS的底
90、層是調(diào)用ADO來(lái)完成的,同樣具有ADO的易用性,區(qū)別僅在于RDS需要與數(shù)據(jù)綁定控件一同使用,比如Sheridan的ActiveX DataBound Grid控件。</p><p> RDS在ADO的基礎(chǔ)上通過(guò)綁定的數(shù)據(jù)顯示和操作控件,提供給客戶端更強(qiáng)的數(shù)據(jù)表現(xiàn)力和遠(yuǎn)程數(shù)據(jù)操縱功能??梢哉f(shuō)RDS是目前基于Web的最好的遠(yuǎn)程數(shù)據(jù)庫(kù)訪問(wèn)方式</p><p> 2.3 系統(tǒng)運(yùn)行與測(cè)試<
91、/p><p> 黑盒測(cè)試:等價(jià)類劃分,邊界值分析法,錯(cuò)誤猜測(cè)法,因果圖法,比較測(cè)試法等價(jià)類劃分:分析規(guī)格說(shuō)明的基礎(chǔ)上劃分等價(jià)類,列出等價(jià)類,然后從等價(jià)類中選出有代表性的數(shù)據(jù)進(jìn)行用例測(cè)試,如果某一類中的一個(gè)用例發(fā)現(xiàn)了錯(cuò)誤,那么這一類中的其他用例也能發(fā)現(xiàn)同樣的錯(cuò)誤。有效等價(jià)類和無(wú)效等價(jià)類。效等價(jià)類:是由那些對(duì)程序規(guī)格說(shuō)明有意義的、合理的數(shù)據(jù)數(shù)據(jù)所構(gòu)成的集合;無(wú)效等價(jià)類:是那些對(duì)程序的規(guī)格說(shuō)明不合理的或無(wú)意義的輸入數(shù)據(jù)所
92、構(gòu)成的集合劃分等價(jià)類的依據(jù):正和反邊界值分析法:其測(cè)試用例來(lái)自與等價(jià)類的邊界,是對(duì)等價(jià)類劃分方法的補(bǔ)充。錯(cuò)誤猜測(cè)法:猜測(cè)被測(cè)程序在那些地方容易出錯(cuò),然后針對(duì)可能的薄弱環(huán)節(jié)設(shè)計(jì)測(cè)試用例。依賴于人們的先驗(yàn)知識(shí),因此,錯(cuò)誤猜測(cè)法一般作為輔助測(cè)試用例設(shè)計(jì)方法使用。果圖法:有因必有果比較測(cè)試:由多個(gè)開(kāi)發(fā)團(tuán)隊(duì)開(kāi)發(fā)出了更多的軟件版本,比較測(cè)試結(jié)果。一般用1,2。</p><p> 白盒測(cè)試:邏輯覆蓋:語(yǔ)句覆蓋、判定覆蓋、條件
93、覆蓋、條件組合覆蓋,發(fā)現(xiàn)錯(cuò)誤的能力從弱到強(qiáng)。</p><p> 第3章 課程設(shè)計(jì)總結(jié)</p><p> 這次課設(shè)我設(shè)計(jì)的題目是銀行存取款管理,通過(guò)本次課設(shè),我學(xué)會(huì)了如何編寫(xiě)VB程序訪問(wèn)數(shù)據(jù)庫(kù),比如用ADO控件,通過(guò)修改命令文本的屬性,是其與它在數(shù)據(jù)庫(kù)中相應(yīng)信息的綁定,通過(guò)修改文本框的信息,對(duì)數(shù)據(jù)庫(kù)直接修改。并應(yīng)用SQL語(yǔ)言,對(duì)指定信息的查詢。調(diào)用AddNew和Delete實(shí)現(xiàn)在數(shù)據(jù)庫(kù)中
94、添加或刪除信息。</p><p> 這次收獲最大的是學(xué)會(huì)了將程序和數(shù)據(jù)庫(kù)連接,實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)中信息的修改和查詢。當(dāng)然,其中不是一帆風(fēng)順的,最大的是在使用Find語(yǔ)句時(shí)出現(xiàn)多次無(wú)法找到需要信息的情況,在老師和同學(xué)的幫助下,成功解決了問(wèn)題,實(shí)現(xiàn)了利息的自動(dòng)計(jì)算,方便了使用者。但是由于時(shí)間和自己對(duì)VB的掌握程度有限沒(méi)有將程序編寫(xiě)的很完美使用。</p><p> 在這次課設(shè)中,我在以前學(xué)習(xí)VB的
95、基礎(chǔ)上,有了新的知識(shí)掌握和對(duì)以前知識(shí)的強(qiáng)化。而且對(duì)VB這個(gè)編程軟件有了新的認(rèn)識(shí),可視化的操作使操作更加方便;通過(guò)修改控件的屬性可以省略一些程序語(yǔ)言的書(shū)寫(xiě),方便了編程者,但是在調(diào)試程序時(shí)會(huì)出現(xiàn)不方便,不能將錯(cuò)誤直接找的。本次課設(shè)崔然已經(jīng)結(jié)束,當(dāng)時(shí)在日后還應(yīng)該加強(qiáng)VB軟件的使用,畢竟還它是一種順應(yīng)時(shí)代的一種工具。</p><p><b> 參考文獻(xiàn)</b></p><p&g
96、t; 1.甘雷,《中文Access 2002標(biāo)準(zhǔn)教程》,北京希望電子出版社</p><p> 2.肖紅.VB《語(yǔ)言程序設(shè)計(jì)實(shí)驗(yàn)指導(dǎo)與習(xí)題解答》.北京:人民郵電出版社</p><p> 3.Thearon Willis.《VB數(shù)據(jù)庫(kù)入門(mén)經(jīng)典》. 北京:清華大學(xué)出版社 </p><p> 4.石志國(guó).《VB數(shù)據(jù)庫(kù)編程》. 北京:清華大學(xué)出版社</p>
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- vb課程設(shè)計(jì)--銀行存取款管理
- java課程設(shè)計(jì)銀行存取款管理系統(tǒng)
- 銀行存取款管理課程設(shè)計(jì)
- 銀行存取款管理系統(tǒng)設(shè)計(jì)
- 銀行存取款業(yè)務(wù)受理課程設(shè)計(jì)
- c語(yǔ)言課程設(shè)計(jì)報(bào)告(銀行存取款管理設(shè)計(jì))
- c語(yǔ)言課程設(shè)計(jì)--銀行存取款業(yè)務(wù)
- 銀行存取款
- c語(yǔ)言課程設(shè)計(jì)銀行存取款業(yè)務(wù)8
- c語(yǔ)言課程設(shè)計(jì)---模擬銀行存取款業(yè)務(wù)
- java課程設(shè)計(jì)報(bào)告--atm存取款系統(tǒng)
- 畢業(yè)論文-銀行存取款系統(tǒng)
- 銀行存取款轉(zhuǎn)賬費(fèi)
- 自助存取款系統(tǒng)
- 銀行存取款管理系統(tǒng)最終終極完善版
- 銀行存取款業(yè)務(wù)管理信息系統(tǒng)
- 數(shù)據(jù)庫(kù)課程設(shè)計(jì)-銀行atm存取款機(jī)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
- 銀行存取款相關(guān)規(guī)定
- 銀行卡異地存取款
- 各個(gè)銀行存取款手續(xù)費(fèi)
評(píng)論
0/150
提交評(píng)論