您的位置:程序门 -> vb -> 数据库(包含打印,安装,报表)



求助:我的数据库联接出现 实时错误3265 在对应所需名称或序数的集合中,未找到项目


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


求助:我的数据库联接出现 实时错误3265 在对应所需名称或序数的集合中,未找到项目[已结贴,结贴人:sckdgzcs]
发表于:2007-03-23 11:09:40 楼主
dim   cn   as   new   adodb.connection
dim   rs   as   new   adodb.recordset
dim   strcnn   as   string
strcnn   =   "provider=microsoft.jet.oledb.4.0;password=;persist   security   info=true;data   source= "   &   app.path   &   "\strdatabase.mdb "
set   cn   =   new   adodb.connection
cn.open   strcnn
set   rs   =   new   adodb.recordset
rs.cursorlocation   =   aduseclient
rs.cursortype   =   adopendynamic
rs.locktype   =   adlockreadonly
rs.activeconnection   =   cn
rs.open   "strdatatablename ",   cn,   ,   ,   adcmdtable
rs.movefirst
do   while   not   rs.eof
field_value1   =   rs.fields(cborun.item(0).text).value
field_value2   =   rs.fields(cborun.item(1).text).value
rs.movenext
call   foundfile
if   rs.eof   then
msgbox   "数据库已经查找结束 ",   vbokonly,   "完成 "
rs.close
cn.close
exit   sub
end   if
loop
调试错误出在field_value1   =   rs.fields(cborun.item(0).text).value这里,错误提示是实时错误3265   在对应所需名称或序数的集合中,未找到项目.cborun.item(0)这是一个combox对象,这个控件读的是数据库里面的一个字段.在执行这上面这段代码前首先要执行了下面的代码:
dim   cn   as   new   adodb.connection
dim   rs   as   new   adodb.recordset
dim   strcnn   as   string
strcnn   =   "provider=microsoft.jet.oledb.4.0;password=;persist   security   info=true;data   source= "   &   app.path   &   "\strdatabase.mdb "
set   cn   =   new   adodb.connection
cn.open   strcnn
set   rs   =   new   adodb.recordset
rs.cursorlocation   =   aduseclient
rs.cursortype   =   adopendynamic
rs.locktype   =   adlockreadonly
rs.open   "strdatatablename ",   cn,   ,   ,   adcmdtable
dim   fldeach   as   adodb.field
for   each   fldeach   in   rs.fields
cborun.item(0).additem   fldeach.name
next
for   each   fldeach   in   rs.fields
cborun.item(1).additem   fldeach.name
next
rs.close
cn.close
msgbox   "数据库已经联接成功 ",   vbokonly,   "数据库联接 "


就将数据库的字段赋给combox控件了,combox控件就选择的是表里面的字段.
下面这段代码的数据库能成功联接.


发表于:2007-03-23 11:40:221楼 得分:0
加一名
   on   error   resume   next
错误到是没有了可是field_value1   =   rs.fields(cborun.item(0).text).value只能得到数据库第一条记录的值后面记录的值就不能赋上了
发表于:2007-03-26 09:06:512楼 得分:50

field_value1   =   rs.fields(cborun.item(0).text).value
field_value2   =   rs.fields(cborun.item(1).text).value
前分别加:
if   not   null(rs.fields(cborun.item(0).text))
在其后分别加:
endif
试试看
发表于:2007-03-26 10:33:263楼 得分:30
cborun.item(0)中有默认选项吗?

运行出错时,你看看cborun.item(0).text值是多少??
发表于:2007-03-26 16:48:154楼 得分:0
非常感谢两位的帮助,这个问题我刚刚解决了.是我不小心把数据库释放了.
发表于:2007-04-04 10:47:025楼 得分:20
解决啦!
恭喜哈!
接分!
发表于:2007-05-08 15:08:226楼 得分:0
怎么接分?


快速检索

最新资讯
热门点击