一开始, OleDbDataReader dbReader=myCmd.ExecuteReader(); 总是捕捉到:
"未处理的 system.data.oledb.oledbexception 类型的异常出现在 system.data.dll 中"的错误信息,
有3种可能引起错误的地方:
1)sql语句错误。应把sql 语句copy到Access查询 中,检查语法,运行测试。
2)数据库连接OleDbConnection可能存在错误。
3) OleDbDataReader未打开,或者OleDbConnection处在关闭状态。
多次检查后确认为sql语句错误。
修改sql后,再次捕捉到:“阅读器关闭时Read的尝试无效”

错误原因:
在方法中关闭了连接,datareader特点是必须是基于打开连接的,一旦connection close()就什么也取不到了,
屏蔽
 //   finally
   //   {
   //    myConn.Close();
   //   }
后总算正常了。
 
查到两种说法:
1)最好是将conn做为参数传入, 再使用ExecuteReader的地方先conn.Open(),使用后conn.Close().

2)在项目中最好不要将datareader这些基于连接的对象做为参数来进行传递.如果非要传参数的话,可以将datareader转化为datatable用来读取数据.

转载于:https://www.cnblogs.com/flashicp/archive/2007/04/29/732169.html

OleDbDataReader 异常处理相关推荐

  1. Go语言的错误异常处理机制及其应用

    一.背景 在日常编写golang程序或阅读别人的golang代码时,我们总会看到如下的一堆代码块: xx, err = func(xx) if err != nil {//do sth. to tac ...

  2. SpringBoot (二) :全局异常处理设置

    说在前面 在spring 3.2中,新增了@ControllerAdvice 注解,可以用于定义@ExceptionHandler.@InitBinder.@ModelAttribute,并应用到所有 ...

  3. 2021年大数据常用语言Scala(三十四):scala高级用法 异常处理

    目录 异常处理 捕获异常 抛出异常 异常处理 Scala中 无需在方法上声明异常 来看看下面一段代码. def main(args: Array[String]): Unit = {val i = 1 ...

  4. Java基础(七)--Exception异常处理

    发现错误的理想时机是程序运行之前(编译期),然后不太现实,很多异常无法被发现(特别是业务上的数据),需要在运行时解决. 错误恢复机制保证代码健壮性的方式,异常处理在程序中很常见,也是必须的,必须考虑有 ...

  5. 零基础学习python_异常处理(32-33课)

    我们写完python执行的时候是不是经常会遇到报错,而且报错都是大片红字,这样给别人的感受就是你写的程序怎么老是出问题啊,这样我们还咋么混下去呢?于是乎,就有了异常处理的东东. python的try语 ...

  6. Spring Security 实战干货:自定义异常处理

    Spring Security 实战干货:自定义异常处理 转自:https://www.cnblogs.com/felordcn/p/12142514.html 文章目录 1. 前言 2. Sprin ...

  7. C++ 笔记(20)— 异常处理(抛出异常、捕获异常)

    异常提供了一种转移程序控制权的方式. C++ 异常处理涉及到三个关键字: try . catch . throw . throw : 当问题出现时,程序会抛出一个异常.这是通过使用 throw 关键字 ...

  8. recover 没有捕获异常_GO语言异常处理机制panic和recover分析

    本文实例分析了GO语言异常处理机制panic和recover.分享给大家供大家参考.具体如下: Golang 有2个内置的函数 panic() 和 recover(),用以报告和捕获运行时发生的程序错 ...

  9. ssm 异常捕获 统一处理_SSM 统一异常处理

    SSM 统一异常处理 spring创建中, 处理异常可以使用try-cache处理, 也可以使用spring提供的统一异常处理 在spring中, 统一处理异常有2中方式 注解方式 @Exceptio ...

最新文章

  1. Microbiome:微生物组研究中优化方法和规避误区
  2. Angular面试从喜剧到悲剧的十个问题
  3. mysql慢查询单位_MySQL慢查询
  4. 关于MVC项目目录结构调整的想法
  5. redhat5 oracle11g安装全程详解,RedHat5+Oracle11g安装全程详解.doc
  6. Python程序反转给定数字(2种不同方式)
  7. jsp+easyui+DataGrid 例子
  8. 中国IT行业盛行,互联网行业早已饱和!程序员“过多”是主要原因?
  9. HNOI2015 接水果
  10. 学习笔记——字符串方法整理
  11. MSSQL2000+ASP.NET+BBSMAX论坛搭建
  12. 如何制作纯净的U盘启动盘
  13. 视频转换器如何将视频MKV转换成MP4格式 1
  14. 打造一款CPS返佣小程序之创建淘宝联盟账号及获取饿了么佣金路径《二》
  15. Windows 2000 检测系统安全进阶详解
  16. freyja 可能会加入分库、分表功能
  17. 利用redis生成订单号
  18. 你不是迷茫,你只是浮躁
  19. fla文件与as文件之间的绑定
  20. 正则表达式转NFA,DFA,最小化DFA

热门文章

  1. AutoLISP-快速更正等高线高程
  2. 人脸识别--人脸提取
  3. 安装SSL证书后,谷歌浏览器无法访问
  4. c 读取mysql中mediumblob_「mediumblob」JSP如何读取MySql中MEDIUMBLOB字符串 - seo实验室
  5. canvas绘制七巧板
  6. Excel表格怎么换行?4个方法任你选!
  7. 给女生的幽默搞笑短信
  8. python3 + opencv 调用摄像头录像后保存视频
  9. 独立游戏demo-FoodStall3.0
  10. 如何退出python 虚拟环境_如何删除python的虚拟环境?