機房收費系統之學生檢視餘額
阿新 • • 發佈:2018-12-16
流程
判斷卡號是否為空----為空,輸入卡好—不為空,連線資料庫----判斷是否有此使用者----沒有,提示-----有,連線並顯示資訊
知識點
If mrc.BOf Then :當前指標的位置是在第一行記錄之前
If mrc.EOF Then :當前指標的位置是在最後一行記錄之後
If Not mrc.EOF Then :當前指標的位置沒有到達最後一條記錄
If Not mrc.BOF Then :當前指標的位置沒有到達第一條記錄
If mrc.BOF AND mrc.EOF Then :沒有任何記錄
If Not (mrc.BOF AND mrc.EOF) Then :指標位於記錄集的當中,說明一定有記錄
問題
1)91錯誤,定義出錯 Dim mrc As New ADODB.Recordset沒加new所以查不到資料庫
2)3704錯誤,物件關閉不允許操作。原因:txtsql打成了sql
引申出的知識點: 在進行查詢的時候,資料庫將查詢結果返回查詢端。BOF表示當前的指標是在記錄集的前面,EOF表示當前指標式在記錄集的最後。
如果同時產生了BOF和EOF的情況,就是說當前的指標既在上界之外也在下界之外,這樣只有一種情況,就是記錄集是空的,這樣當前指標無論是指到什麼地方都是同時具有BOF和EOF的屬性。
3)發現二義性名稱top_up
程式碼展示
txtsql = "select * from student_Info where cardno = '" & Trim(txtcardno.Text) & "'" Set mrc = ExecuteSQL(txtsql, msgtext) '判斷是否存在該使用者 If mrc.BOF And mrc.EOF Then '沒有任何記錄 MsgBox "沒有該使用者", 48, "提示" txtcardno.SetFocus txtcardno.Text = "" Exit Sub Else txtstudentNo.Text = mrc.Fields(1) txtName.Text = mrc.Fields(2) txtsex.Text = mrc.Fields(3) txtdepartment.Text = mrc.Fields(4) txtgrade.Text = mrc.Fields(5) txtclass.Text = mrc.Fields(6) txtcash.Text = mrc.Fields(7) txtexplain.Text = mrc.Fields(8) txtIscheck.Text = mrc.Fields(11) mrc.Update mrc.Close End If
總結
變是永遠不變的