下面一段简单的代码中,我在conn.Open();时报出了一段句柄无效的异常
try
{
OracleConnection conn = new OracleConnection(connStr);
conn.Open();
return conn;
}
catch(Exception ex)
{
throw;
}ex信息:
System.Runtime.InteropServices.COMException
ex.Message——句柄无效。 (异常来自 HRESULT:0x80070006 (E_HANDLE))
ex.Source——mscorlib
ex.StackTrace——在 System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 errorCode, IntPtr errorInfo)\r\n 在 System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)\r\n 在 System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)\r\n 在 System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)\r\n 在 System.Data.OracleClient.OracleConnection.Open()\r\n 在 CardServer.DataBase.DB.GetConnection() 位置 (此处为当前代码文件路径):行号 44"补充说明:连接字符串应该没问题"Data Source =orcl; User Id = ****; Password =****",在绝大部分时间都可以正常连接,但是隔1~2天或者不定期会报出来。数据库连接也没超过最大连接数,因为报错的时候我都看过数据库当前SESSSION数量。还有,如果把断点拉回去再执行一次(包括CONNECTION的实例化),还是会一直报这个错,但是我打开以下其他界面后返回来就没事了。大家都帮帮忙啊,发表一下意见,不管对不对都好,谢谢了~~~
try
{
OracleConnection conn = new OracleConnection(connStr);
conn.Open();
return conn;
}
catch(Exception ex)
{
throw;
}ex信息:
System.Runtime.InteropServices.COMException
ex.Message——句柄无效。 (异常来自 HRESULT:0x80070006 (E_HANDLE))
ex.Source——mscorlib
ex.StackTrace——在 System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 errorCode, IntPtr errorInfo)\r\n 在 System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)\r\n 在 System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)\r\n 在 System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)\r\n 在 System.Data.OracleClient.OracleConnection.Open()\r\n 在 CardServer.DataBase.DB.GetConnection() 位置 (此处为当前代码文件路径):行号 44"补充说明:连接字符串应该没问题"Data Source =orcl; User Id = ****; Password =****",在绝大部分时间都可以正常连接,但是隔1~2天或者不定期会报出来。数据库连接也没超过最大连接数,因为报错的时候我都看过数据库当前SESSSION数量。还有,如果把断点拉回去再执行一次(包括CONNECTION的实例化),还是会一直报这个错,但是我打开以下其他界面后返回来就没事了。大家都帮帮忙啊,发表一下意见,不管对不对都好,谢谢了~~~
解决方案 »
- 为什么一个控件的Width动画和Height动画,不能同时进行?
- winform c# listView鼠标拖拽的问题
- 高手们求救啊!```
- 输出控件怎么换行?
- C#调用Delphi写的Dll时出现乱码[解决后再加分]
- 发短消息碰到个头痛问题,急救
- treeMaker
- 我想学软件测试,请问刚入门的有哪些比较好的书籍?
- 如何用DataAdapter通过用户前台动态修改、删除数据
- 【毕设求助】c#火车运动的动画制作以及速度位移曲线的绘制 求大神帮忙
- ReportViewer1.LocalReport.Render 如何输出第二页
- 如何建空的BLOB参数?------------------急!!!!!!!!
这种。弄的机子报这个类似的错误。
{
OracleConnection conn = new OracleConnection(connStr);
conn.Open();
return conn;
}
catch(Exception ex)
{
throw;
}
你只有打开数据库的代码,却没有执行命令啊
试试写句command 命令看看到底是哪里出错了?
回8楼:connStr我没任何问题
open时出错,那还是conn实例化时出的错。 把connStr贴出来