数据库中无记录遇到实时错误“3021”的解决方法
2013-08-04 10:36
996 查看
大家在敲学生信息管理系统时,经常会遇到这种情况:
数据库中没有添加记录,但我们点击修改记录时,会出现如下提示:
最开始,问了很多同学,都认为这是系统的漏洞,很正常,不用太在意,这不叫错误!但是,后来仔细一想,一个完整的软件,总不能在中途运行过程中出现这么一个错误吧!这也有点儿太不近人情了!于是我琢磨了,找出两种解决办法,供大家参考!
一、进行错误处理
错误处理的本质就是当遇到错误时,可以跳过该错误,直接进行下一步,以便于程序顺利进行!
那么我们根据这个原理在代码中添加错误处理,问题便可迎刃而解!
那么,经过上述方法处理后,程序一旦遇到类似情况,就可直接提示“无记录”并运行下一步!
如图:
我们在点击确定后直接运行下一步,显示本窗体。
在这里需要注意的是,用If语句有一个好处,我们可以直接将显示本窗体这一行代码改成显示添加记录窗体,更加灵活方便!(因为错误处理默认直接执行下一步,而下一步就是显示本窗体)
将上述 frmModifyinfo.show 改成 frmAddinfo.show
根据自己的意愿填写!
数据库中没有添加记录,但我们点击修改记录时,会出现如下提示:
最开始,问了很多同学,都认为这是系统的漏洞,很正常,不用太在意,这不叫错误!但是,后来仔细一想,一个完整的软件,总不能在中途运行过程中出现这么一个错误吧!这也有点儿太不近人情了!于是我琢磨了,找出两种解决办法,供大家参考!
一、进行错误处理
错误处理的本质就是当遇到错误时,可以跳过该错误,直接进行下一步,以便于程序顺利进行!
那么我们根据这个原理在代码中添加错误处理,问题便可迎刃而解!
Private Sub Form_Load() Dim txtSQL As String Dim msgText As String txtSQL = "SELECT * FROM student_Info " Set mrc = ExecuteSQL(txtSQL, msgText) '得到临时表 On Error GoTo 1: mrc.MoveFirst Call viewData myBookmark = mrc.Bookmark '对当前记录进行标记 mcclean = True '可编辑状态 1: If Err = 3021 Then MsgBox "无记录!" End If end sub二、根据上述原理,那么我们可以将代码稍作修改,不做错误处理,而是当程序运行的错误考虑在内,当遇到这种情况时,用一个if语句,让程序直接进行下一步即可,与上述方法异曲同工!
Private Sub Form_Load() Dim txtSQL As String Dim msgText As String txtSQL = "SELECT * FROM student_Info " Set mrc = ExecuteSQL(txtSQL, msgText) '得到临时表 ’考虑无记录情况 If mrc.EOF And mrc.BOF Then ’一条IF语句充当错误处理,当无记录时,mrc.eof=true
’和mrc.bof=true两个条件同时满足! MsgBox "无记录!" frmModifysinfo.Show ’直接进行下一步,显示窗体 Else mrc.MoveFirst Call viewData myBookmark = mrc.Bookmark '对当前记录进行标记 mcclean = True '可编辑状态 End If
那么,经过上述方法处理后,程序一旦遇到类似情况,就可直接提示“无记录”并运行下一步!
如图:
我们在点击确定后直接运行下一步,显示本窗体。
在这里需要注意的是,用If语句有一个好处,我们可以直接将显示本窗体这一行代码改成显示添加记录窗体,更加灵活方便!(因为错误处理默认直接执行下一步,而下一步就是显示本窗体)
将上述 frmModifyinfo.show 改成 frmAddinfo.show
根据自己的意愿填写!
相关文章推荐
- 数据库管理所遇到的错误与解决方法
- 使用SQL Server发布数据库快照遇到错误:对路径”xxxxx“访问被拒绝的解决方法
- MySql重装或者重新配置数据库实例时遇到“本地计算机无法启动Mysql服务”错误的解决方法
- 使用SQL Server发布数据库快照遇到错误:对路径“xxxxx”访问被拒绝的解决方法
- 装anaconda遇到的错误以及解决方法的记录
- 关于hibernate查询,数据库字段为clob的错误原因及解决方法记录
- 这个常见的错误。大家记录下自己曾遇到的这样问题的解决方法
- 使用SQL Server发布数据库快照遇到错误:对路径”xxxxx“访问被拒绝的解决方法
- PowerDesigner反向数据库时遇到[Microsoft][ODBC SQL Server Driver][SQL Server]无法预定义语句。SQLSTATE = 37错误解决方法
- 使用SQL Server发布数据库快照遇到错误:对路径”xxxxx“访问被拒绝的解决方法
- 遇到的问题------数据库 update 语句出现错误的解决方法
- 遇到的问题------数据库 update 语句出现错误的解决方法
- 手动编译安装PHP遇到错误以及解决方法记录
- openstack安装部署时遇到的错误记录及解决方法
- Power Designer反向数据库时遇到sqlstate=37000或SQLSTATE=42S02错误解决方法
- 使用MSSQL同步&发布数据库快照遇到错误:对路径“xxxxx”访问被拒绝的解决方法
- PHP 开发遇到数据库 The user sepcified as a definer ('root'@'%') does not exist 错误 解决方法
- 实时错误“3021”在Delete事件中出现的解决方法
- Xcode 升级后,常常遇到的遇到的警告、错误,解决方法
- 30多条mysql数据库优化方法,千万级数据库记录查询轻松解决