问题:
在添加用户信息的过程中,执行到while(mrc.EOF=False)的时候,提示如下错误,对象变量或with块变量未设置
当把光标放到set mrc=executesql(txtsql,msgtext)上面的时候,会发现mrc返回值为Nothing.mrc的值为空,所以就会提示对象变量未设置这样的错误提示。
解决办法:
上网搜了好多,原因可以分为两种
1.数据库未连上,或添加数据源时出现错误
数据库连接失败的原因:
(1)服务管理器没有启动服务,启动一下就可以
(2)数据源ODBC没有添加你想连接的数据库,或者是把数据的名称写错了
(3)没有把默认数据库设置成你想访问的数据库
2.代码书写有错误
在代码检查的过程中,要注意ADO连接的数据源是否正确,一定要是student.dsn.并且用户名和密码要跟设置的一样,这样才会连接到你想查询的数据库。
txtsql=“ select * from student_info where ”
where 后面一定要有空格。
当我找到模块中定义的executesql函数,竟然发现把SQL写成了SAL,
知识总结:
Executesql函数:
定义的executesql函数有两个参数,一个是sql,一个是msgstring,sql是用来存放sql查询语句的,msgstring是用来存放返回结果的,即使成功了,还是失败了,最后把查询到的结果返回给定义的记录集变量mrc.
像下面的代码,功能就是把查询到的结果集返回给mrc.