为什么在存储过程中用OLEDB方式不能返回记录集

elis8

elis8

2016-02-19 12:30

下面图老师小编要向大家介绍下为什么在存储过程中用OLEDB方式不能返回记录集,看起来复杂实则是简单的,掌握好技巧就OK,喜欢就赶紧收藏起来吧!
为什么在存储过程中用OLEDB方式不能返回记录集?
我曾写过一段程序,是对临时表操作的(主要功能是取出每种分类的TOP10条记录)。
该存储过程使用ODBC连接数据库时正常,能够得到正确的结果。但在使用oledb方式连接时,却不能返回记录集,而一旦操作返回记录集时就出现错误提示:
ADODB.Recordset 错误 '800a0e78'
The operation requested by the application is not allowed if the object is closed.
令我百思不得其解。这是为什么?

这是因为OLEDB与ODBC存在着一个差别,就是,当ASP向ODBC取记录集时,ODBC过滤了由create table
或insert into产生一些只占位置但不能进行任何操作的记录集,而当ASP向OLEDB取记录集时,OLEDB并
没有将这些记录集过滤掉。所以,我们应在存储过程中不希望返回记录集前就执行set nocount on,
禁止存储过程返回记录集;而要返回记录集时,就要先执行set nocount off。这样,问题就会解决了。
展开更多 50%)
分享

猜你喜欢

为什么在存储过程中用OLEDB方式不能返回记录集

Web开发
为什么在存储过程中用OLEDB方式不能返回记录集

Oracle中通过存储过程中返回数据集及在Delphi中使用

编程语言 网络编程
Oracle中通过存储过程中返回数据集及在Delphi中使用

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

VC执行一个不带参数的存储过程,返回一个记录集:

编程语言 网络编程
VC执行一个不带参数的存储过程,返回一个记录集:

在存储过程中实现分页

Web开发
在存储过程中实现分页

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

ASP调用ORACLE存储过程并返回结果集

ASP
ASP调用ORACLE存储过程并返回结果集

如何在oracle存储过程中返回游标

编程语言 网络编程
如何在oracle存储过程中返回游标

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

Javac--Java编程语言编译器

Javac--Java编程语言编译器

用asp自动解析网页中的图片地址

用asp自动解析网页中的图片地址
下拉加载更多内容 ↓