一 问题总结
我的学生信息管理系统也终于在自己的辛劳努力下完成了,原本可以向师傅提交的时候,却遇到了这些问题! 问题一 ByRef参数类型不符
原因如下:
1。传递参数未定义类型,假如参数在调用前未定义类型,系统自动将他定义为variant类型,由于和过程或函数中的对就参数类型不相同,所以提示"byref参数类型不符"
2。传递参数类型已定义,但由于定义方法不对,所以提示"byref参数类型不符"。
解决办法很简单:我就是把txtSQL 和MsgText分别定义就可以了,定义代码是这样的:dim txtSQL, MsgText as string ;其实结果是MsgText有了定义,txtSQL却没有被定义,当然就会报错了,分开定义就会解决这个问题了!!
第二个问题:
原因如下:1.查找的数据库记录为空..可以用 rs.RecordCount 来判断数据是否为0
2 .查找到数据后,用 Del 命令删除记录后,再引用 Fields 后会出现错误.
3.已经用MoveFirst 或用 MovePrevious 命令 移动至数据库开始后再用 MovePrevious 命令.
4.已经用MoveLast 或用 MoveNext 命令 移动至数据库开始后再用 MoveNext 命令.
总之就是你要用的那条记录为空,或者就没有那条记录,不过大多都是后俩条原因,如果你的数据库没有连上就可能是第一条原因了!http://blog.csdn.net/cfl20121314/article/details/7888142我是看着师哥的方法解决的不过,大家有更好的办法可以多多和我交流!
第三个问题:实时错误'91' 对象变量或with块变量未设置
我知道大家都遇到过这个问题,凡是用过SQL Sever 数据库的都会遇到过这个问题,就是数据库没有连接上的问题!http://blog.csdn.net/asd19920126/article/details/9374465 这个是师哥的解决办法,我就不写了
第四个问题 实时错误94:无效使用Null
这个大家会认为和那个数据库表中的那个 记录后面的那个 null选项有关,其实大家想的复杂了,就是因为你的那条赋值语句中的字符串后面有了空字符串,所有才会报的错。大家用一个Trim函数就分分钟钟搞定了!
第五个问题就是有时候我在登陆界面输入密码的时候,输入用户名,切换到密码文本框,那个登陆界面就自动消失了,然后vb就失去了响应。我每次都会重新配置ODBC然后重启电脑才可以解决!
以上问题就是我的总结,大家要多熟悉运用msgbox和Trim,不要把小问题严重化!