3704对象关闭时_VB中“对象关闭时,不允许操作”解决方案 3704 錯誤 | 学步园...
问题是这样的,在VB中执行存储过程,想讀取存儲過程返回的結果集,存儲過程用到臨時表,在VB中調用存儲過程的時候就出現3704的錯誤,提示“對象關閉時,不允許操作”,在網上找了很多信息,都不能解決問題,無疑間在百度知道上看到一個人提的問題,有人回答,有一條很符合我的現象,果然解決了哈哈,轉載主要原因有一下:
1、数据库对象连接被关闭了,这肯定会报错的,当然也不能输出任何结果的,这时只需注意“先使用、后关闭”就行了,解决这样的问题就是暂时先不要关闭数据库连接就行了。
2、返回记录为空时,也会报错。如下面的代码
代码
1 sql=select*fromdbcnwhere状态='0'2 Setrs=conn.Execute(sql)3 IfNotrs.EOFThen4 Form=1Tors.RecordCount5 List_status.AddItem rs(1)&(&rs(2)&):&rs(4)6 rs.MoveNext7 Nextm8 EndIf
如果没有数据的话,这里也会提示这样的错误,将查询代码放到SQL查询分析器里运行一下,果然没有数据,呵呵。当然这样的错误可以采用一些方法排除或过滤的。
3、这就是我这次所遇到的问题的中心了,我们将目光转向存储过程。的确,在SQL查询分析器里,存储过程是正常运行,而且不会报错,也有数据。但仔细想想,因为在存储过程可能包含了有关SQL语句影响行数的信息,这样一来也就可能会导致这样的情况。
打开存储过程,在begin后面加上一句代码:set nocount on,屏蔽掉这些信息。OK,VB中的程序巳经能够正常运行了,而且数据也是正常的。
顺便解释一下吧,打开查询分析器中的帮助,查找一下有关set nocount on的信息,我们会找到这些东西:
====================================
SET NOCOUNT
使返回的结果中不包含有关受 Transact-SQL 语句影响的行数的信息。
语法
SET NOCOUNT { ON | OFF }
注释
当 SET NOCOUNT 为 ON 时,不返回计数(表示受 Transact-SQL 语句影响的行数)。
当 SET NOCOUNT 为 OFF 时,返回计数。
即使当 SET NOCOUNT 为 ON 时,也更新 @@ROWCOUNT 函数。
当 SET NOCOUNT 为 ON 时,将不给客户端发送存储过程中的每个语句的 DONE_IN_PROC 信息。当使用microsoft® SQL Server™ 提供的实用工具执行查询时,在 Transact-SQL 语句(如 SELECT、INSERT、UPDATE 和 DELETE)结束时将不会在查询结果中显示nn rows affected。
如果存储过程中包含的一些语句并不返回许多实际的数据,则该设置由于大量减少了网络流量,因此可显著提高性能。
SET NOCOUNT 设置是在执行或运行时设置,而不是在分析时设置。
权限
SET NOCOUNT 权限默认授予所有用户。
示例
下例在 osql 实用工具或 SQL Server 查询分析器中执行时,可防止显示有关受影响的行数的信息。
代码
1 USEpubs2 GO3 --Display the count message.4 SELECTau_lname5 FROMauthors6 GO7 USEpubs8 GO9 --SET NOCOUNT to ON and no longer display the count message.10 SETNOCOUNTON11 GO12 SELECTau_lname13 FROMauthors14 GO15 --Reset SET NOCOUNT to OFF.16 SETNOCOUNTOFF17 GO
3704对象关闭时_VB中“对象关闭时,不允许操作”解决方案 3704 錯誤 | 学步园...相关推荐
- 计算机的关闭程序,电脑中取消关机时强制关闭程序提醒的方法
一位用户反馈自己的电脑在关机前都会提示没有关闭的程序,需要选择关闭后才能关机,感觉这样非常烦人.那么,电脑中该如何取消关机时强制关闭程序提醒呢?接下来,系统城小编就为大家分享下具体操作方法,让关机更加 ...
- java中对象的生存期_Java中对象的生存周期
文章目录 JAVA对象的生存周期 1.创建阶段(Created) 为对象分配内存需要考虑的问题 2.应用阶段(In Use) 3.不可见阶段(Invisible) 4.不可达阶段(Unreachabl ...
- javascript 无法修改 数组中对象_谈谈JavaScript中对象建立(Object)
在这篇文章中我将会着重说明如何创建JavaScript里的对象(Object). 对象(Object)是什么? 在开始介绍如何创建对象前,我们要知道对象是什么.对象(Object)简单地来说,就是一堆 ...
- python中对象的定义_python中对象的定义和使用
python中对象的定义和使用 发布时间:2020-06-22 11:57:16 来源:亿速云 阅读:98 作者:Leah 今天就跟大家聊聊有关python中对象的定义和使用,可能很多人都不太了解,为 ...
- 微信云开发云数据库,数组中添加对象,修改数组中对象,删除数组中对象
添加 向data数组中添加对象,代码如下,event._id,event.data,id要在哪条数据中添加对象,data为字段push为添加 ` const db = cloud.database() ...
- android方法是对象吗,为什么android中对象不初始化也能调用方法?
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 public class MainActivity extends ActionBarActivity { private Button bt; priv ...
- mysql中imagin的类型_Image转换成Mysql的blob类型 | 学步园
发现网上好多方法都不可行,下面是我的方法,略麻烦,纯属为自己以后的使用做个记录,如果你有更好的方法请留言,谢谢~ 第二种方法,已知文件路径,通过构造文件的方式转换成blob很简单.如果很不幸,你只有I ...
- java 润乾报表打印4.5_润乾报表中常见的打印类问题的总结| 润乾软件 | 学步园...
在解决润乾报表的打印类问题时,首先要知道打印与哪些文件相关,下面就列出了与打印相关的文件及位置: 1.runqianReport4Applet.jar 位置:应用根目录下 2.report4.jar ...
- java父类与子类的构造方法_java中的加载顺序以及父类与子类的构造方法 | 学步园...
public class fatt { public static void main(String[] args) { animal a=new cat(9); } } class animal{ ...
最新文章
- 某程序员吐槽:分手一个月,发现前女友和一个已婚男人在一起,愤而向他们公司举报,该男已被开除!网友:举报别人不道德!...
- RPi 3B Aduio 3.5mm output
- 开始简单项目的第二周
- Asp.Net Core Docker镜像更新系统从wheezy改为stretch
- Android学习拾遗
- 专科计算机组成原理大一试题及答案,计算机组成原理专科试题答案.doc
- 【echarts】 tooltip显示图片
- 【BMC】Redfish简述
- 施耐德 m340 编程手册_施耐德变频器学习之参数配置
- m5310采用芯片 中移物联_智慧交通,未来已来!汉天下助力中移物联,引爆NB-IoT行业!...
- GB/T 7714, MLA ,APA这几种参考文献格式
- 免费的注册表修复工具推荐
- 智源首席科学家孙茂松当选欧洲科学院外籍院士
- “华为杯”第十八届中国研究生数学建模竞赛B题参赛总结
- php 随即英文,PHP生成随机英文用户名
- h5 app 实现页面刷新
- 轻松解决 “Error creating bean with name 'indentDao' defined in file”的错误(一)
- 已解决Visit python.org to download an earlier version of Python.
- js 解决移动端苹果自带输入法的连续输入多打重复字的问题
- 团体程序设计天梯赛-练习集 L2-028 秀恩爱分得快 (25 分) (详细解法)
热门文章
- EasyUi – 4.datagrid
- 我学UML建模系列之核心元素 -------- 参与者
- 成功的产品 = 做得好 + 卖得好
- 在C#中使用SerialPort类实现串口通信
- IT创业迷魂圈:不要画饼充饥
- 浅析python 中__name__ = '__main__' 的作用
- 推荐:介绍一个UndoFramework
- [Shell 脚本] 备份数据库文件至OSS服务(纯shell脚本无sdk)
- ES6 Generator 初体验
- Android Studio实用插件使用