标题:求救啊···················
只看楼主
3201
Rank: 1
等 级:新手上路
帖 子:174
专家分:0
注 册:2005-4-12
 问题点数:0 回复次数:10 
求救啊···················

<% dim m m="provider=SQLOLEDB;UID=momo;PWD=3201;database=TABLE" set k=server.createobject("ADODB.recordset") k.open "select * from TABLE1",m,2,3 response.write(k.recordcount) k.close set k=nothing

%> 请问我这段代码有错吗? 为什么输出的结果是“-1”啊 ?

搜索更多相关主题的帖子: database nothing 
2005-04-25 20:28
3201
Rank: 1
等 级:新手上路
帖 子:174
专家分:0
注 册:2005-4-12
得分:0 
数据库是有记录的

 如果改成1,1的话是可以正常显示的

 不过 如果改成1,1的话 不是会浏览不到其他用户所添加的记录吗 ?

努力中的菜鸟,请多支持············ 蠢问题多,请多见谅···········o_0
2005-04-25 21:16
hxfly
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:5807
专家分:108
注 册:2005-4-7
得分:0 
建议你到这里来看看 里面有关于RS。OPEN所跟的参数问题 http://bbs.bc-cn.net/bbs/dispbbs.asp?boardID=10&ID=16723&page=1

2005-04-26 09:34
3201
Rank: 1
等 级:新手上路
帖 子:174
专家分:0
注 册:2005-4-12
得分:0 
按照版主所提供的资料来说CursorType 用 1 时应该是查看不了别人添加的记录的 但能用rescordcount的
 我想查看别人添加的记录同时又想使用recordcount时应该选用哪个?
  为什么我用 2 和 3的时候 recordcount 就不好用了呢 ?

努力中的菜鸟,请多支持············ 蠢问题多,请多见谅···········o_0
2005-04-26 14:18
无根泉
Rank: 2
等 级:新手上路
威 望:4
帖 子:853
专家分:0
注 册:2004-11-4
得分:0 
以下是引用3201在2005-4-25 20:28:56的发言:

<% dim m m="provider=SQLOLEDB;UID=momo;PWD=3201;database=TABLE" set k=server.createobject("ADODB.recordset") k.open "select * from TABLE1",m,3,2 response.write(k.recordcount) k.close set k=nothing

%> 请问我这段代码有错吗? 为什么输出的结果是“-1”啊 ?


我很菜,但我很努力!
2005-04-26 14:34
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
得分:0 
以下是引用3201在2005-4-25 20:28:56的发言:

<% dim m m="provider=SQLOLEDB;UID=momo;PWD=3201;database=TABLE" set k=server.createobject("ADODB.recordset") k.open "select * from TABLE1",m,2,3 response.write(k.recordcount) k.close set k=nothing

%> 请问我这段代码有错吗? 为什么输出的结果是“-1”啊 ?

m="provider=SQLOLEDB;UID=momo;PWD=3201;database=TABLE" k.open "select * from TABLE1",m,2,3 我刚看出来,这个是最明显的错误! 应该改成 m="provider=SQLOLEDB;UID=momo;PWD=3201;database=TABLE" Dim con Set con=Server.CreateObject("ADODB.Connection") con.Open m k.open "select * from TABLE1",con,2,3 记录集对象k的Open方法必需的参数是一个ADODB.Connection的对象,而不是连接字符串。楼主这样写不错误才奇怪呢。
2005-04-26 16:03
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
得分:0 
如果改的再错误,那就是m的连接字符串有问题。楼主如果连接SQL Server的数据库,连接字符串中,没有指明数据库服务器的计算机名称。这样的话会造成,找不到数据库服务器的错误。
2005-04-26 16:05
3201
Rank: 1
等 级:新手上路
帖 子:174
专家分:0
注 册:2005-4-12
得分:0 
请问一下楼上的 改了之后 k.open "select * from TABLE1",con,2,3 好需要吗? 不能单纯的用recordset方法连接数据库吗? 因为我用我最上面给出的连接方法是可以连接到数据库的 因为读取数据是完全没有问题的 就是recordcount 总显示-1 请问一下就是楼上说的原因吗?

努力中的菜鸟,请多支持············ 蠢问题多,请多见谅···········o_0
2005-04-26 16:44
yms123
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:209
帖 子:12488
专家分:19042
注 册:2004-7-17
得分:0 
以下是引用3201在2005-4-26 16:44:39的发言: 请问一下楼上的 改了之后 k.open "select * from TABLE1",con,2,3 好需要吗? 不能单纯的用recordset方法连接数据库吗? 因为我用我最上面给出的连接方法是可以连接到数据库的 因为读取数据是完全没有问题的 就是recordcount 总显示-1 请问一下就是楼上说的原因吗?
Recordset是记录集对象,用来操作数据库的对象之一。Recordset是不能单独来连接数据库的,要不然ADODB里定义Connection对象干麻使。Connection对象最大的作用就是用来连接数据库的,操作数据库的Recordset是最方便的操作数据库对象之一。当然ADODB还有Command对象 这个对象的特点就是,Connection对象的Execute方法的SQL语句权限小。对于用VB来创建数据库,创建表来说Command的Execute就有这样的能力。而Connection对象就在这方面欠缺。
2005-04-26 21:34
3201
Rank: 1
等 级:新手上路
帖 子:174
专家分:0
注 册:2005-4-12
得分:0 
不好意思啊各位大哥

 问了这么多蠢问题

 可能是因为我在创建表的时候没有设置主键

 所以recordcount 会出错吧  因为我设置了主键之后 就可以正常显示了

另外 还想问多一个问题  请问每次连接数据库的时候是不是都要加上connection呢?

  因为我没有用connection 只用recordset 也可以连接和使用数据库的 ···

努力中的菜鸟,请多支持············ 蠢问题多,请多见谅···········o_0
2005-04-27 10:24



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-16692-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.036945 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved