版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 目 錄</b></p><p> 一、課程設計目的……………………1</p><p> 二、系統(tǒng)設計…………………………1</p><p> 三、數(shù)據(jù)庫邏輯結構設計……………2</p><p> 四、系統(tǒng)功能模塊圖…………………4</p><p> 五、源程
2、序代碼………………………11</p><p> 六、課程設計總結……………………30</p><p> 七、存在的問題及不足………………30</p><p><b> 課程設計目的</b></p><p> 通過數(shù)據(jù)庫課程設計,培養(yǎng)學生數(shù)據(jù)庫設計的綜合能力。從需求分析和數(shù)據(jù)庫邏輯、物理設計,到功能分析和應用程序的
3、最終實現(xiàn),讓學生親自動手參與一個具有一定規(guī)模的數(shù)據(jù)庫應用系統(tǒng)的設計和開發(fā),真正理解和掌握數(shù)據(jù)庫設計和開發(fā)的思路和方法,并更好的理解和消化課本所學的知識,為今后的實際應用打下良好的基礎。</p><p><b> 系統(tǒng)設計</b></p><p> 本課程設計(個人記賬系統(tǒng))是用VB+SQL設計完成的。在本系統(tǒng)里可以對家庭人員基本信息以及家庭賬目的收入支出進行簡單維
4、護。</p><p> 主要功能包括對家庭人員信息以及家庭收支的添加、修改、刪除、查找、統(tǒng)計等功能。</p><p> 三、數(shù)據(jù)庫邏輯結構設計</p><p> 1.SQL數(shù)據(jù)庫設計</p><p><b> 表格設計:</b></p><p> userinfo表,記錄用戶信息<
5、/p><p> familyinfo表,記錄家庭人員信息</p><p> income表,記錄收入方面信息</p><p> pay表,記錄支出方面信息</p><p> account表,匯總收支信息</p><p> allaccount表,計算總收支及結余</p><p><
6、b> 存儲過程</b></p><p> 定義countall存儲過程,統(tǒng)計account表中的收支信息,并對收支金額進行求和,算出結余插入到allaccount表中。</p><p><b> 觸發(fā)器:</b></p><p> familyinfo表上定義update觸發(fā)器完成對income和pay上收支人員的一致
7、性更新。</p><p> income表上定義insert,delete及update觸發(fā)器,完成對于account表上的各個數(shù)據(jù)的一致性更新。</p><p> pay表上定義insert,delete及update觸發(fā)器,完成對于account表上的各個數(shù)據(jù)的一致性更新。</p><p> account表上定義insert,delete及update觸
8、發(fā)器,調用countall存儲過程完成對于allacount表上數(shù)據(jù)的統(tǒng)計更新。</p><p><b> 四、系統(tǒng)功能模塊圖</b></p><p><b> 1、數(shù)據(jù)源連接</b></p><p><b> 2、界面設計</b></p><p><b>
9、登陸界面:</b></p><p><b> 注冊界面:</b></p><p><b> 收入管理界面:</b></p><p> 界面中分為三個部分,第一部分收入信息,第二部分顯示當前總收支及與結余,并隨著用戶添加修改刪除的操作及時更新,第三部分是操作信息,包括查詢、添加、修改、刪除。</p&g
10、t;<p><b> 住處管理界面:</b></p><p> 界面中分為三個部分,第一部分收入信息,第二部分顯示當前總收支及與結余,并隨著用戶添加修改刪除的操作及時更新,第三部分是操作信息,包括查詢、添加、修改、刪除。</p><p><b> 收支界面顯示:</b></p><p><b>
11、; 家庭人員信息顯示:</b></p><p><b> 五、附:源程序代碼</b></p><p><b> SQL代碼</b></p><p> 觸發(fā)器 pay表上</p><p><b> de_pay </b></p><p&
12、gt; create trigger de_pay</p><p><b> on pay</b></p><p> for delete</p><p><b> as</b></p><p> declare @new_time char(20)</p><p>
13、; declare @new_item char(20)</p><p> declare @new_mon int</p><p> declare @new_rela char(20)</p><p> declare @new_expl char(200)</p><p> select @new_time=支出時間 from
14、 deleted</p><p> select @new_item=支出項目 from deleted</p><p> select @new_mon=支出金額 from deleted</p><p> select @new_rela=支出人員 from deleted</p><p> select @new_expl=支出
15、說明 from deleted</p><p> delete from account where 錄入時間=@new_time and 收支金額=@new_mon and 收支項目=@new_item and 收支人員=@new_rela and 收支說明=@new_expl</p><p><b> out_tr</b></p><p&g
16、t; create trigger out_tr</p><p><b> on pay</b></p><p> for insert</p><p><b> as</b></p><p> declare @new_time char(20)</p><p>
17、 declare @new_item char(20)</p><p> declare @new_mon int</p><p> declare @new_rela char(20)</p><p> declare @new_expl char(200)</p><p> select @new_time=支出時間 from
18、inserted</p><p> select @new_item=支出項目 from inserted</p><p> select @new_mon=支出金額 from inserted</p><p> select @new_rela=支出人員 from inserted</p><p> select @new_expl
19、=支出說明 from inserted</p><p> insert into account(錄入時間,收支類型,收支金額,收支項目,收支人員,收支說明)</p><p> values(@new_time,'支出',@new_mon,@new_item,@new_rela,@new_expl) </p><p><b> up_
20、pay</b></p><p> create trigger up_pay</p><p><b> on pay</b></p><p> for update</p><p><b> as</b></p><p> declare @new_ti
21、me char(20)</p><p> declare @new_item char(20)</p><p> declare @new_mon int</p><p> declare @new_rela char(20)</p><p> declare @new_expl char(200)</p><p&
22、gt; declare @old_time char(20)</p><p> declare @old_item char(20)</p><p> declare @old_mon int</p><p> declare @old_rela char(20)</p><p> declare @old_expl char(20
23、0)</p><p> select @old_time=支出時間 from deleted</p><p> select @old_item=支出項目 from deleted</p><p> select @old_mon=支出金額 from deleted</p><p> select @old_rela=支出人員 fro
24、m deleted</p><p> select @old_expl=支出說明 from deleted</p><p> select @new_time=支出時間 from inserted</p><p> select @new_item=支出項目 from inserted</p><p> select @new_mon
25、=支出金額 from inserted</p><p> select @new_rela=支出人員 from inserted</p><p> select @new_expl=支出說明 from inserted</p><p> update account set 錄入時間=@new_time where 錄入時間=@old_time</p&g
26、t;<p> update account set 收支金額=@new_mon where 收支金額=@old_mon</p><p> update account set 收支項目=@new_item where 收支項目=@old_item</p><p> update account set 收支人員=@new_rela where 收支人員=@old_rel
27、a</p><p> update account set 收支說明=@new_expl where 收支說明=@old_expl</p><p><b> income 表上</b></p><p> create trigger de_income</p><p><b> on income<
28、;/b></p><p> for delete</p><p><b> as</b></p><p> declare @new_time char(20)</p><p> declare @new_item char(20)</p><p> declare @new_mo
29、n int</p><p> declare @new_rela char(20)</p><p> declare @new_expl char(200)</p><p> select @new_time=收入日期 from deleted</p><p> select @new_item=收入項目 from deleted&l
30、t;/p><p> select @new_mon=收入金額 from deleted</p><p> select @new_rela=收入人員 from deleted</p><p> select @new_expl=收入說明 from deleted</p><p> delete from account where 錄入時
31、間=@new_time and 收支金額=@new_mon and 收支項目=@new_item and 收支人員=@new_rela and 收支說明=@new_expl</p><p> create trigger in_tr</p><p><b> on income</b></p><p> for insert</p&
32、gt;<p><b> as</b></p><p> declare @new_time char(20)</p><p> declare @new_item char(20)</p><p> declare @new_mon int</p><p> declare @new_rela c
33、har(20)</p><p> declare @new_expl char(200)</p><p> select @new_time=收入日期 from inserted</p><p> select @new_item=收入項目 from inserted</p><p> select @new_mon=收入金額 fro
34、m inserted</p><p> select @new_rela=收入人員 from inserted</p><p> select @new_expl=收入說明 from inserted</p><p> insert into account(錄入時間,收支類型,收支金額,收支項目,收支人員,收支說明)</p><p>
35、 values(@new_time,'收入',@new_mon,@new_item,@new_rela,@new_expl) </p><p> create trigger up_income</p><p><b> on income</b></p><p> for update</p><p
36、><b> as</b></p><p> declare @new_time char(20)</p><p> declare @new_item char(20)</p><p> declare @new_mon int</p><p> declare @new_rela char(20)<
37、;/p><p> declare @new_expl char(200)</p><p> declare @old_time char(20)</p><p> declare @old_item char(20)</p><p> declare @old_mon int</p><p> declare @
38、old_rela char(20)</p><p> declare @old_expl char(200)</p><p> select @old_time=收入日期 from deleted</p><p> select @old_item=收入項目 from deleted</p><p> select @old_mon=
39、收入金額 from deleted</p><p> select @old_rela=收入人員 from deleted</p><p> select @old_expl=收入說明 from deleted</p><p> select @new_time=收入日期 from inserted</p><p> select @
40、new_item=收入項目 from inserted</p><p> select @new_mon=收入金額 from inserted</p><p> select @new_rela=收入人員 from inserted</p><p> select @new_expl=收入說明 from inserted</p><p>
41、; update account set 錄入時間=@new_time where 錄入時間=@old_time</p><p> update account set 收支金額=@new_mon where 收支金額=@old_mon</p><p> update account set 收支項目=@new_item where 收支項目=@old_item</p>
42、<p> update account set 收支人員=@new_rela where 收支人員=@old_rela</p><p> update account set 收支說明=@new_expl where 收支說明=@old_expl</p><p> familyinfo表上</p><p> create trigger up_f
43、amily</p><p> on dbo.familyinfo</p><p> for update</p><p><b> as</b></p><p> declare @new_rela char(20)</p><p> declare @old_rela char(20)
44、</p><p> select @new_rela=家庭人員 from inserted</p><p> select @old_rela=家庭人員 from deleted</p><p> update income set 收入人員=@new_rela where 收入人員=@old_rela</p><p> update
45、 pay set 支出人員=@new_rela where 支出人員=@old_rela</p><p><b> account表上</b></p><p> create trigger de_account</p><p> on account</p><p> for delete</p>
46、<p><b> as</b></p><p> exec countall</p><p> create trigger in_account</p><p> on account</p><p> for insert </p><p><b> as&l
47、t;/b></p><p> exec countall</p><p> create trigger up_account</p><p> on account</p><p> for update</p><p><b> as</b></p><p&
48、gt; exec countall</p><p><b> 存儲過程</b></p><p> CREATE proc countall</p><p><b> as</b></p><p> declare @sum_income int</p><p>
49、declare @sum_pay int</p><p> declare @sum_count int</p><p> declare @old_income int</p><p> declare @old_pay int</p><p> declare @old_sum int</p><p>
50、select @old_income=總收入,@old_pay=總支出,@old_sum=結余 from allaccount</p><p> select @sum_income=sum(收支金額) from account where 收支類型='收入'</p><p> select @sum_pay=sum(收支金額) from account where 收
51、支類型='支出'</p><p> set @sum_count=@sum_income-@sum_pay</p><p> update allaccount set 總收入=@sum_income where 總收入=@old_income</p><p> update allaccount set 總支出=@sum_pay where
52、總支出=@old_pay</p><p> update allaccount set 結余=@sum_count where 結余=@old_sum</p><p><b> VB代碼</b></p><p><b> '模塊</b></p><p> Public cn As A
53、DODB.Connection</p><p> Public rs As ADODB.Recordset</p><p><b> '菜單</b></p><p> Private Sub Command1_Click()</p><p><b> 菜單.Hide</b></
54、p><p><b> 收入管理.Show</b></p><p><b> End Sub</b></p><p> Private Sub Command2_Click()</p><p><b> 菜單.Hide</b></p><p><
55、b> 支出管理.Show</b></p><p><b> End Sub</b></p><p> Private Sub Command3_Click()</p><p><b> 菜單.Hide</b></p><p><b> 收支顯示.Show<
56、/b></p><p><b> End Sub</b></p><p> Private Sub Command4_Click()</p><p><b> 菜單.Hide</b></p><p><b> 登錄.Show</b></p><
57、p><b> End Sub</b></p><p> Private Sub Command5_Click()</p><p> If MsgBox("你確定要退出嗎?", vbOKCancel, "提示") = vbOK Then</p><p><b> End</b&
58、gt;</p><p><b> End If</b></p><p><b> End Sub</b></p><p> Private Sub Command6_Click()</p><p><b> 菜單.Hide</b></p><p>
59、;<b> 家庭人員.Show</b></p><p><b> End Sub</b></p><p><b> '登錄</b></p><p> Private Sub Command1_Click()</p><p> Set cn = New ADOD
60、B.Connection</p><p> Set rs = New ADODB.Recordset</p><p> cn.Open "dsn=keep_account"</p><p> rs.Open "select * from userinfo where username='" & Text1
61、 & "'" & "and password='" & Text2 & "'", cn, adOpenStatic, adLockOptimistic</p><p> If rs.RecordCount > 0 Then</p><p><b> 菜單.
62、Show</b></p><p><b> 登錄.Hide</b></p><p><b> Else</b></p><p> MsgBox "密碼錯誤或用戶名不存在!請重新輸入。"</p><p> a = a + 1 '密碼沒輸入一次a的數(shù)值就
63、增加1</p><p> Text1.Text = ""</p><p> Text2.Text = ""</p><p> If a > 2 Then '三次輸入錯誤,程序強制退出</p><p> MsgBox "三次輸入錯誤,強制退出!"</p>
64、;<p><b> End</b></p><p><b> End If</b></p><p><b> End If</b></p><p><b> End Sub</b></p><p> Private Sub Comm
65、and2_Click()</p><p><b> 登錄.Hide</b></p><p><b> 注冊.Show</b></p><p><b> End Sub</b></p><p> Private Sub Command3_Click()</p>
66、<p> If MsgBox("你確定要退出嗎?", vbOKCancel, "提示") = vbOK Then</p><p><b> End</b></p><p><b> End If</b></p><p><b> End Sub<
67、/b></p><p><b> '家庭人員</b></p><p> Public Sub export()</p><p> Text1.Text = rs.Fields("家庭人員")</p><p> Text2.Text = rs.Fields("年齡&quo
68、t;)</p><p> Text3.Text = rs.Fields("政治面貌")</p><p> Text4.Text = rs.Fields("職業(yè)")</p><p> Text5.Text = rs.Fields("說明")</p><p><b>
69、End Sub</b></p><p> Public Sub import()</p><p> rs.Fields("家庭人員") = Text1.Text</p><p> rs.Fields("年齡") = Text2.Text</p><p> rs.Fields(&quo
70、t;政治面貌") = Text3.Text</p><p> rs.Fields("職業(yè)") = Text4.Text</p><p> rs.Fields("說明") = Text5.Text</p><p><b> End Sub</b></p><p>
71、Public Sub clear()</p><p> Text1.Text = ""</p><p> Text2.Text = ""</p><p> Text3.Text = ""</p><p> Text4.Text = ""</p>
72、<p> Text5.Text = ""</p><p><b> End Sub</b></p><p> Private Sub Command1_Click()</p><p> On Error GoTo flag</p><p> rs.MoveFirst</p
73、><p> Call export</p><p><b> Exit Sub</b></p><p><b> flag:</b></p><p> MsgBox "數(shù)據(jù)庫空或當前已是第一條!"</p><p><b> End Sub&
74、lt;/b></p><p> Private Sub Command10_Click()</p><p> If MsgBox("你確定要退出嗎?", vbOKCancel, "提示") = vbOK Then</p><p><b> End</b></p><p>
75、;<b> End If</b></p><p><b> End Sub</b></p><p> Private Sub Command2_Click()</p><p> On Error GoTo flag</p><p> rs.MovePrevious</p>&
76、lt;p> If rs.BOF Then</p><p> MsgBox "當前已是第一條記錄!", , "提示"</p><p> rs.MoveFirst</p><p><b> Else</b></p><p> Call export</p>
77、<p><b> End If</b></p><p><b> Exit Sub</b></p><p><b> flag:</b></p><p> MsgBox "數(shù)據(jù)庫無記錄或當前已是第一條!"</p><p><b>
78、; End Sub</b></p><p> Private Sub Command3_Click()</p><p> On Error GoTo flag</p><p> rs.MoveNext</p><p> If rs.EOF Then</p><p> MsgBox "當
79、前已是最后一條記錄!", , "提示"</p><p> rs.MoveLast</p><p><b> Else</b></p><p> Call export</p><p><b> End If</b></p><p><
80、;b> Exit Sub</b></p><p><b> flag:</b></p><p> MsgBox "數(shù)據(jù)庫無記錄或當前已是最后一條記錄!"</p><p><b> End Sub</b></p><p> Private Sub Com
81、mand4_Click()</p><p> On Error GoTo flag</p><p> rs.MoveLast</p><p> Call export</p><p><b> Exit Sub</b></p><p><b> flag:</b>&
82、lt;/p><p> MsgBox "數(shù)據(jù)庫無記錄或當前已是最后一條記錄!"</p><p><b> End Sub</b></p><p> Private Sub Command5_Click()</p><p> On Error GoTo flag</p><p>
83、; If rs.RecordCount > 0 Then</p><p> rs.MoveLast</p><p><b> rs.AddNew</b></p><p> Call import</p><p><b> rs.Update</b></p><p&
84、gt;<b> Else</b></p><p><b> rs.AddNew</b></p><p> Call import</p><p><b> rs.Update</b></p><p><b> End If</b></p&g
85、t;<p> 收入管理.Combo3.AddItem (Text1.Text)</p><p><b> 收入管理.Hide</b></p><p> 支出管理.Combo3.AddItem (Text1.Text)</p><p><b> 支出管理.Hide</b></p><
86、p> 'Call clear</p><p><b> rs.Close</b></p><p> rs.Open "select * from familyinfo", cn, adOpenStatic, adLockOptimistic</p><p> rs.MoveLast</p>
87、<p><b> Exit Sub</b></p><p><b> flag:</b></p><p> MsgBox "請檢查你輸入的格式是否正確."</p><p><b> End Sub</b></p><p> Privat
88、e Sub Command6_Click()</p><p> If MsgBox("你確定要修改該條記錄?", vbOKCancel, "提示") = vbOK Then</p><p><b> rs.Delete</b></p><p><b> rs.Update</b>
89、;</p><p><b> rs.AddNew</b></p><p> Call import</p><p><b> rs.Update</b></p><p><b> End If</b></p><p><b> rs.
90、Close</b></p><p> rs.Open "select * from familyinfo", cn, adOpenStatic, adLockOptimistic</p><p><b> End Sub</b></p><p> Private Sub Command7_Click()&l
91、t;/p><p> On Error GoTo flag</p><p> Dim a As Integer</p><p> Dim b As Integer</p><p> a = 收入管理.Combo3.ListCount - 1</p><p> b = 支出管理.Combo3.ListCount -
92、1</p><p> If MsgBox("你確定要刪除這一條記錄?", vbOKCancel, "提示") = vbOK Then</p><p><b> rs.Delete</b></p><p><b> rs.Update</b></p><p&g
93、t; rs.MovePrevious</p><p> Call export</p><p> 收入管理.Combo3.RemoveItem a</p><p><b> 收入管理.Hide</b></p><p> 支出管理.Combo3.RemoveItem b</p><p>&
94、lt;b> End If</b></p><p><b> rs.Close</b></p><p> rs.Open "select * from familyinfo", cn, adOpenStatic, adLockOptimistic</p><p><b> Exit Sub&
95、lt;/b></p><p><b> flag:</b></p><p> MsgBox "數(shù)據(jù)庫無記錄或已刪除記錄!"</p><p><b> End Sub</b></p><p> Private Sub Command8_Click()</p>
96、;<p> On Error GoTo flag</p><p> If Combo2.Text = "全部顯示" Then</p><p> Set 家庭人員顯示.DataGrid1.DataSource = rs</p><p> 家庭人員顯示.Show</p><p><b> El
97、se</b></p><p> If Text6.Text = "" Then</p><p> MsgBox "請輸入查找信息!"</p><p><b> Else</b></p><p><b> rs.Close</b></p
98、><p> rs.Open "select * from familyinfo where " & Combo2.Text & "='" & Text6 & "'", cn, adOpenStatic, adLockOptimistic '按用戶指定的方式,與用戶提供的信息查詢</p>
99、<p> If rs.RecordCount > 0 Then</p><p> Call export</p><p><b> Else</b></p><p> MsgBox "對不起,記錄中沒有你要查找的項!"</p><p><b> End If<
100、;/b></p><p><b> End If</b></p><p><b> End If</b></p><p><b> 'rs.Close</b></p><p> 'rs.Open "select * from family
101、info", cn, adOpenStatic, adLockOptimistic</p><p><b> Exit Sub</b></p><p><b> flag:</b></p><p> MsgBox "請檢查你輸入的格式是否正確:"</p><p>
102、<b> End Sub</b></p><p> Private Sub Command9_Click()</p><p><b> 家庭人員.Hide</b></p><p><b> 菜單.Show</b></p><p><b> End Sub&l
103、t;/b></p><p> Private Sub Form_Load()</p><p> Set cn = New ADODB.Connection</p><p> Set rs = New ADODB.Recordset</p><p> cn.Open "dsn=keep_account"<
104、/p><p> rs.Open "select * from familyinfo", cn, adOpenStatic, adLockOptimistic</p><p> Call export</p><p><b> End Sub</b></p><p><b> '收
105、入管理</b></p><p> Private Sub Command1_Click()</p><p> On Error GoTo flag</p><p> rs.MoveFirst</p><p> Call export</p><p><b> Exit Sub</b
106、></p><p><b> flag:</b></p><p> MsgBox "數(shù)據(jù)庫空或當前已是第一條!"</p><p><b> End Sub</b></p><p> Private Sub Command10_Click()</p>&
107、lt;p> If MsgBox("你確定要退出嗎?", vbOKCancel, "提示") = vbOK Then</p><p><b> End</b></p><p><b> End If</b></p><p><b> End Sub</b&
108、gt;</p><p> Private Sub Command2_Click()</p><p> On Error GoTo flag</p><p> rs.MovePrevious</p><p> If rs.BOF Then</p><p> MsgBox "當前已是第一條記錄!&quo
109、t;, , "提示"</p><p> rs.MoveFirst</p><p><b> Else</b></p><p> Call export</p><p><b> End If</b></p><p><b> Exit
110、Sub</b></p><p><b> flag:</b></p><p> MsgBox "數(shù)據(jù)庫無記錄或當前已是第一條!"</p><p><b> End Sub</b></p><p> Private Sub Command3_Click()<
111、;/p><p> On Error GoTo flag</p><p> rs.MoveNext</p><p> If rs.EOF Then</p><p> MsgBox "當前已是最后一條記錄!", , "提示"</p><p> rs.MoveLast</p
112、><p><b> Else</b></p><p> Call export</p><p><b> End If</b></p><p><b> Exit Sub</b></p><p><b> flag:</b>&
113、lt;/p><p> MsgBox "數(shù)據(jù)庫無記錄或當前已是最后一條記錄!"</p><p><b> End Sub</b></p><p> Private Sub Command4_Click()</p><p> On Error GoTo flag</p><p>
114、; rs.MoveLast</p><p> Call export</p><p><b> Exit Sub</b></p><p><b> flag:</b></p><p> MsgBox "數(shù)據(jù)庫無記錄或當前已是最后一條記錄!"</p><
115、;p><b> End Sub</b></p><p> Private Sub Command5_Click()</p><p> On Error GoTo flag</p><p> If rs.RecordCount > 0 Then</p><p> rs.MoveLast</p&g
116、t;<p><b> rs.AddNew</b></p><p> Call import</p><p><b> rs.Update</b></p><p><b> Else</b></p><p><b> rs.AddNew</
117、b></p><p> Call import</p><p><b> rs.Update</b></p><p><b> End If</b></p><p> Call clear</p><p><b> rs.Close</b>
118、;</p><p> rs.Open "select * from allaccount", cn, adOpenStatic, adLockOptimistic</p><p> Label10.Caption = rs.Fields("總收入")</p><p> Label11.Caption = rs.Field
119、s("總支出")</p><p> Label12.Caption = rs.Fields("結余")</p><p><b> rs.Close</b></p><p> rs.Open "select * from income", cn, adOpenStatic, adL
120、ockOptimistic</p><p> rs.MoveLast</p><p><b> Exit Sub</b></p><p><b> flag:</b></p><p> MsgBox "請檢查你輸入的格式是否正確." & vbCrLf &
121、"收入金額為數(shù)字格式" & vbCrLf & "時期請按:(年)-(月)-(日)輸入" & vbCrLf & "其他為文本格式"</p><p><b> End Sub</b></p><p> Private Sub Command6_Click()</p>
122、<p> If MsgBox("你確定要修改該條記錄?", vbOKCancel, "提示") = vbOK Then</p><p><b> rs.Delete</b></p><p><b> rs.Update</b></p><p><b>
123、 rs.AddNew</b></p><p> Call import</p><p><b> rs.Update</b></p><p><b> End If</b></p><p><b> rs.Close</b></p><p
124、> rs.Open "select * from allaccount", cn, adOpenStatic, adLockOptimistic</p><p> Label10.Caption = rs.Fields("總收入")</p><p> Label11.Caption = rs.Fields("總支出")
125、</p><p> Label12.Caption = rs.Fields("結余")</p><p><b> 'rs.Close</b></p><p> 'rs.Open "select * from income", cn, adOpenStatic, adLockOptim
126、istic</p><p><b> End Sub</b></p><p> Private Sub Command7_Click()</p><p> On Error GoTo flag</p><p> If MsgBox("你確定要刪除這一條記錄?", vbOKCancel, &qu
127、ot;提示") = vbOK Then</p><p><b> rs.Delete</b></p><p><b> rs.Update</b></p><p> rs.MovePrevious</p><p> Call export</p><p>&
128、lt;b> End If</b></p><p><b> rs.Close</b></p><p> rs.Open "select * from allaccount", cn, adOpenStatic, adLockOptimistic</p><p> Label10.Caption =
129、rs.Fields("總收入")</p><p> Label11.Caption = rs.Fields("總支出")</p><p> Label12.Caption = rs.Fields("結余")</p><p><b> 'rs.Close</b></p
130、><p> 'rs.Open "select * from income", cn, adOpenStatic, adLockOptimistic</p><p><b> Exit Sub</b></p><p><b> flag:</b></p><p> Ms
131、gBox "數(shù)據(jù)庫無記錄或已刪除記錄!"</p><p><b> End Sub</b></p><p> Private Sub Command8_Click()</p><p> On Error GoTo flag</p><p> If Combo2.Text = "全部顯
132、示" Then</p><p> Set 收入顯示.DataGrid1.DataSource = rs</p><p><b> 收入顯示.Show</b></p><p><b> Else</b></p><p> If Text6.Text = "" Th
133、en</p><p> MsgBox "請輸入查找信息!"</p><p><b> Else</b></p><p><b> rs.Close</b></p><p> rs.Open "select * from income where "
134、& Combo2.Text & "='" & Text6 & "'", cn, adOpenStatic, adLockOptimistic '按用戶指定的方式,與用戶提供的信息查詢</p><p> If rs.RecordCount > 0 Then</p><p> Call e
135、xport</p><p><b> Else</b></p><p> MsgBox "對不起,記錄中沒有你要查找的項!"</p><p><b> End If</b></p><p><b> End If</b></p><
136、;p><b> End If</b></p><p><b> 'rs.Close</b></p><p> 'rs.Open "select * from income", cn, adOpenStatic, adLockOptimistic</p><p><b&g
137、t; Exit Sub</b></p><p><b> flag:</b></p><p> MsgBox "請檢查你輸入的格式是否正確:" & vbCrLf & "日期請按(年)-(月)-(日)格式輸入."</p><p><b> End Sub<
138、/b></p><p> Private Sub Command9_Click()</p><p><b> 收入管理.Hide</b></p><p><b> 菜單.Show</b></p><p><b> End Sub</b></p>&l
139、t;p> Private Sub Form_Load()</p><p> Set cn = New ADODB.Connection</p><p> Set rs = New ADODB.Recordset</p><p> cn.Open "dsn=keep_account"</p><p> rs.
140、Open "select * from allaccount", cn, adOpenStatic, adLockOptimistic</p><p> Label10.Caption = rs.Fields("總收入")</p><p> Label11.Caption = rs.Fields("總支出")</p>
141、;<p> Label12.Caption = rs.Fields("結余")</p><p><b> rs.Close</b></p><p> rs.Open "select * from income", cn, adOpenStatic, adLockOptimistic</p>&l
142、t;p> Call export</p><p><b> End Sub</b></p><p><b> '收支顯示</b></p><p> Private Sub Command1_Click()</p><p><b> 收支顯示.Hide</b&g
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)據(jù)庫課程設計---小型記賬系統(tǒng)
- 數(shù)據(jù)庫課程設計--java_個人記賬管理系統(tǒng)
- 數(shù)據(jù)庫原理課程設計---個人事物管理數(shù)據(jù)庫課程設計
- 個人記賬系統(tǒng)課程設計報告
- 數(shù)據(jù)庫課程設計報告---餐飲系統(tǒng)
- 工資管理系統(tǒng)數(shù)據(jù)庫設計報告(數(shù)據(jù)庫課程設計)
- 工資管理系統(tǒng)數(shù)據(jù)庫設計報告數(shù)據(jù)庫課程設計
- 數(shù)據(jù)庫課程設計--bbs系統(tǒng)數(shù)據(jù)庫設計
- 數(shù)據(jù)庫課程設計報告
- 數(shù)據(jù)庫課程設計報告
- 數(shù)據(jù)庫課程設計報告
- 數(shù)據(jù)庫課程設計報告
- 數(shù)據(jù)庫課程設計報告
- 數(shù)據(jù)庫課程設計報告
- 數(shù)據(jù)庫課程設計報告
- 數(shù)據(jù)庫課程設計---數(shù)據(jù)庫
- 數(shù)據(jù)庫課程設計報告--設備儀器數(shù)據(jù)庫設計
- 數(shù)據(jù)庫課程設計報告---圖書館管理系統(tǒng)數(shù)據(jù)庫
- 工資管理系統(tǒng)數(shù)據(jù)庫設計報告(數(shù)據(jù)庫課程設計)模板
- 數(shù)據(jù)庫課程設計--快餐訂餐系統(tǒng)數(shù)據(jù)庫設計
評論
0/150
提交評論