一:登录(数据库连接) 登录中遇到的最致命的问题就是数据库连接问题.数据库没连接好就会出现"91"类型的错误。一般错误的根源在两点。一 是SQL server 那块的连接失败,重新连就是了。再就是常见的代码失误性错误问题。
age:
txtSQL = "select * fromresult_Info where",因为后面还要添加条件,所以在‘where’和‘ "’之间缺少空 格时会出错。
txtSQL= "select * from class_Info whereclass_No='" &Trim(txtClassno.Text) & "'",其中在 最后判断输入框中的条件时,双引号 和单引号一定要注意(单引号,双引号,&),既不可破坏其顺序层次,也不能 丢三落四。
二 :实时错误 3021 “BOF 或 EOF 中有一个是真,或当前的记录已被删除,所需的操作要求一个当前记录” 说白了就是我们要删除或者修改一个记 录,但是数据库里没有这个记录。也就是代码本身是没有错误的。
解决方法有两个:
第一 :在数据库中添加相应的数据,避免出现没有数据的现象。(但是,用户很有可能自己把数据删完,所以虽然解决了目前的问题,但是没有 根本解决问题,不推荐。
第二:加一个错误处理。
On error gotoErrorMsg
ErrorMsg:
Iferr=3021 then
Msgbox "没有记录"
三 : 关于EOF 和 BOF
1:如果当前记录位于第一个记录之前,BOF 属性将返回 True(-1),如果当前记录为第一个记录或位于其后则将返回 False (0)。
2:如果当前记录位于 Recordset 对象的最后一个记录之后 EOF 属性将返回 True,而当前记录为Recordset 对象的最后一个记录或位于其前,则将返回False。
3:如果 BOF 或 EOF 属性为 True,则没有当前记录
四 : 多步OLE DB操作产生错误。如果可能,请检查每个OLE DB状态值。 当我们在修改信息的时候,如果修改的信息量超过了OLEDB所允许的信息量就会出现类似于溢出的问题,即多步OLEDB 操作产生错误。
解决方法有两个
第一:设置text的属性maxlength 为特定数值,例如3,这样在text中只能输入3个字符。
第二:到数据库中对表的数据长度进行修改。找到相应的表后右击选择修改,在数据类型处修改即可。