学生修改信息之‘3021’问题
生活随笔
收集整理的這篇文章主要介紹了
学生修改信息之‘3021’问题
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
在敲學(xué)生的時候,經(jīng)常出現(xiàn)‘3021’問題,當(dāng)BOF或EOF中有一個為真時,就會出現(xiàn)’3021‘的錯誤,出現(xiàn)這個問題的原因主要是查找的數(shù)據(jù)庫當(dāng)中沒有數(shù)據(jù),在修改學(xué)籍信息的時候,將所有的數(shù)據(jù)刪除就報錯,可以添加一個on error goto line 錯誤捕捉語句,出現(xiàn)3021問題的時候彈出提示框提示沒有學(xué)籍信息,需要先添加學(xué)籍信息,代碼如下:
Private Sub cmddelete_Click()On Error GoTo err'記錄當(dāng)前記錄位置mybookmark = mrc.Bookmark'提示是否刪除str2$ = MsgBox("是否刪除當(dāng)前記錄?", vbOKCancel, "刪除當(dāng)前記錄")'判斷按鈕類型If str2$ = vbOK Then'移動到數(shù)據(jù)集下一條記錄mrc.MoveNext'判斷數(shù)據(jù)集對象是否為空If mrc.EOF Then'移動到數(shù)據(jù)集的第一條記錄mrc.MoveFirst'記載當(dāng)前記錄的位置mybookmark = mrc.Bookmark'移動到最后一條記錄mrc.MoveLast'刪除記錄mrc.Deletemrc.Bookmark = mybookmark'調(diào)用函數(shù)顯示數(shù)據(jù)Call viewdataElse'記載當(dāng)前位置mybookmark = mrc.Bookmark'移動到前一條記錄mrc.MovePrevious'刪除記錄mrc.Delete'回到原來位置mrc.Bookmark = mybookmark'調(diào)用函數(shù)顯示數(shù)據(jù)Call viewdataEnd IfElsemrc.Bookmark = mybookmarkCall viewdataEnd If'錯誤處理 err:If err = 3021 ThenIf mrc.EOF And mrc.BOF ThenMsgBox "當(dāng)前沒有記錄!", vbOKOnly + vbExclamation, "警告"Elsea = MsgBox("這是最后一條記錄,是否刪除!?", vbOKOnly + vbExclamation, "警告")If a = vbOK ThentxtSID.Text = ""txtName.Text = ""combosex.Text = ""txtTel.Text = ""txtAdress.Text = ""txtcomment.Text = ""ComboClassNo.Text = ""MsgBox "當(dāng)前無記錄,系統(tǒng)將退出!", vbOKOnly + vbexcalamation, "警告"Unload MeElseExit SubEnd IfEnd IfEnd If End Sub這樣在將所有的信息刪除之后,就不會再報3021,沒有記錄的時候會退出系統(tǒng),剛開始認(rèn)為這樣就可以了,但是后來發(fā)現(xiàn),當(dāng)我再次點(diǎn)開修改信息這個窗體的時候還是會報3021,所以又在主窗體的菜單欄那塊增加了這些代碼,再點(diǎn)擊修改學(xué)籍信息窗體的時候進(jìn)行判斷,如果數(shù)據(jù)庫信息為0(mrc.recordcount=0),就報提示框,然后返回添加學(xué)籍信息窗體添加信息,代碼如下
Private Sub midifystu_Click()Dim txtsql As StringDim mrc As ADODB.RecordsetDim msgtext As Stringtxtsql = "select * from student_info "Set mrc = ExecuteSQL(txtsql, msgtext)'修改學(xué)籍信息的時候沒有信息首先判斷要添加學(xué)籍信息If mrc.RecordCount = 0 ThenMsgBox "沒有學(xué)籍信息,請先添加學(xué)籍信息!", vbOKOnly + vbExclamation, "警告"mrc.CloseSet mrc = Nothingfrmaddsinfo.ShowExit SubElsefrmModifyinfo.ShowEnd IfEnd Sub總結(jié)
以上是生活随笔為你收集整理的学生修改信息之‘3021’问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Camera初始化流程
- 下一篇: PTA乙级 1096 大美数——15分