代码调试过程中遇到的问题和解决方法
1、运行不了,出现对象变量或with块变量未设置
原因:数据库的连接出了问题。
我连接的不是student数据库。
解决方法:检查和重新连接数据库,确保连接的数据库没有错误。
(出现这个问题还可能是没有引用)
2、当密码设置的位数过多时,就出现下面的情况:
只要限制密码的位数就可设置成功。
出现问题原因就是存入的值的长度比你定义字段值的长度要长了。检查一下数据库里的字段,看插入的数据长度是否超过了字段长度。
经过查看,数据库中的字段长度是10,我之前输入的密码长度太长。至于如何去修改数据库内部的信息,最后介绍。
2、在添加学籍信息的时候,出现这种情况:
提示在这里
我添加学籍信息的时候,输入的班号类型不正确,才导致的错误。(思考,可不可以通过修改数据库中字段中的信息格式,来解决这个问题)
4、运行软件出现如下错误:
解决方法:在外接程序管理器中重新加载API函数,确保加载的函数正确。
5、在添加用户界面运行时还是出现上次的错误类型,
错误原因:在txtSQL=” select * from user_info”这行代码中多了一个空格。
再次面对弹出的这个错误,心里没那么多的恐惧了,只是这次的解决真是费了我好半天的劲,从检查代码到检查数据库的连接,还有检查窗体和模块中的变量设置等,都没有问题。实在没有想到是因为一个空格引起的。
总结一点就是,越是不起眼的错误,越是我们自我觉得不可能犯的低级错误,才是最难发现的,要克服心理障碍。
这个错误,我在别人的博客里经常看到,应该是大家都遇到了,似乎还是个很棘手的问题,正好,今天在调试修改密码的程序时,我也遇到了,感觉很好,我可以又学点知识了。
错误的指示点是:
解决方法:修改数据库,给数据库的第一行赋值,使他不为空。
修改数据库毕竟不是很现实的解决方法,一般数据库中的内容轻易不能修改,不能影响全局。我尝试了用添加代码的方法
解决整个问题。出现问题的原因是访问的数据库没有内容了,.EOF的意思是数据库中结尾的下一个,BOF的意思是开头的前一个,如果按照程序的源码访问数据库,很可能会出现访问不到内容,我们只需要在访问数据库时条件判断一下数据库中是不是有内容,如果没有内容选择弹出窗体提示,并退出,如果有内容,按照顺序执行就可以了。
在每次访问数据库时,添加如下代码:If mrc.RecordCount = 0 Then
MsgBox "没有记录!", vbOKOnly + vbExclamation, "警告"
Exit Sub
End If
注意这行代码是在每次访问数据库时都要添加上,因为不管是数据库的信息转到下一个前一个、第一个或者是最后一个,都有可能在下一次的访问时,访问不到数据,所以每一次的访问都要添加。
另外,启动窗体一定要从frmlogin开始启动。这样在修改密码时,系统知道你的用户名是哪个,然后执行修改密码操作。