|
本帖最后由 盗梦 于 2014-11-12 14:12 编辑
问题描述:
今天 roych斑竹 发了一些有关ADO的贴。其中有用Command调用存储过程的示例。
我尝试了一下。可以返回记录集。
不过,这个记录集有些不一样:RecordCount=-1。而且使用rs.MoveLast方法也会报错。好像是没有游标导致的。
我再把这个记录集赋给一个子窗体,就报错了。
解决方法:
再通过Command对象打开一次记录集即可。
- Dim rs As New ADODB.Recordset
- Dim Cmd As New ADODB.Command
-
- Cmd.ActiveConnection = Conn '设置连接
- Cmd.CommandText = "execute 存储过程名 '参数1','参数2'"
- 'Set rs = Cmd.Execute '此操作,不能获取记录集的RecordCount的值,永远只能返回-1
- '方法二:用Cmd打开记录集
- Cmd.Execute
- rs.Open Cmd, , adOpenKeyset, adOpenKeyset '此方法可以获取 RecordCount
复制代码
这样处理之后,可以返回RecordCount,也可以将记录集赋给子窗体
PS:这里也引出一个东西。我们打开记录集Open方法,还可以通过Command对象打开
注:roych斑竹的贴:【新手进阶】之十八:浅谈ADO之Command(下)
http://www.office-cn.net/thread-119044-1-1.html
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
评分
-
查看全部评分
|