数据库连接,有时会出错在conn.open connstr这地方的问题,及联接查询调用rs("user.id")的问题2006-6-8-4

在创建客户管理系统时遇到数据库连接错误,最初使用'DBQ='...'DRIVER={Microsoft Access Driver (*.mdb)};'的连接字符串,出现'未找到项目'的问题。通过调整为'provider=microsoft.jet.oledb.4.0;data source='...的连接方式暂时解决,但之后在联接查询中,发现rs("id")意外地调用了第二个表的ID。最终发现,对于不同的连接字符串,正确调用第二个表ID的方式是rs("b.id"),疑似与数据库引擎有关。
摘要由CSDN通过智能技术生成

最近在给客户做一个客户管理系统时遇到一个问题:

使用下列这个连接字符串时情况如下

connstr="DBQ="+server.mappath("db/#kehumsg.mdb")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
set conn=server.createobject("ADODB.CONNECTION")
conn.open connstr


有一个联接查询,
中用到要调用第二个表的id,
按正常来说可以这么调rs("b.id")但却显示在对应所需名称或序数的集合中,未找到项目。
在csdn上发贴终找不出答案,
最后用rs("id")解决问题,心想,这么调用应该是调第一个表的id吧,
但它却调的是第二个表的,不过我要的就是第二个的,
研究了一下,原来真是这样,它调的是后一个表的id. 感觉还不错,自己能研究出些东西了,呵呵~~
但快下班时客户说有问题,什么都进不了了,
出错的地方在上面那种联接的conn.open connstr处,
这里怎么会出错呢,在网上找了一下说有这种情况,于是按他说的改了一下改成

dbpath=server.mappath("db/#kehumsg.mdb") 
connstr= "provider=microsoft.jet.oledb.4.0;data source=" & dbpath
set conn=server.createobject("adodb.connection") 
conn.open connstr

没多想,大概试了一下可以,
但好景不长,今天客户又说出问题了.
拿到一看,我服了,又是联合查询那出错了,
怎么会这样呢,和经理研究了一下终于发现问题所在:

这时调用第二个表的id里可以调用rs("b.id")也必须这么调用,
不能像第一个联接字符那样了,
我觉得应该是数据库引擎的问题,不知大家怎么认为,
在此向大家推荐第二种联接,

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值