数据库连接未关闭

sxfwang 2009-02-03 04:40:41
我用以下代码访问了一下数据库,连接应该已经关闭,为什么查看V$Session中,连接还存在啊。
OracleConnection connection = new OracleConnection(connString);
OracleCommand command = new OracleCommand(Query, connection);
OracleDataAdapter adapter = new OracleDataAdapter(command);
connection.Open();
System.Data.DataSet myDataSet = new System.Data.DataSet();
adapter.Fill(myDataSet,"Results");
connection.Close();
...全文
168 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
sxfwang 2009-02-19
  • 打赏
  • 举报
回复
怪事,还是没搞明白是怎么回事,怎么有时候正常,有时候又不正常。
Lxpd 2009-02-05
  • 打赏
  • 举报
回复
connection是有的,关后就会放在应用程序池里了,只要不是Open就可以
jojoqiong 2009-02-05
  • 打赏
  • 举报
回复
有可能跟缓存有关
csgdseed 2009-02-05
  • 打赏
  • 举报
回复
up
sxfwang 2009-02-05
  • 打赏
  • 举报
回复
这段程序一开始是正常的,后来用了一段时间后就出来这个问题。找了各种方法,到现在还没有解决。
Nihn 2009-02-04
  • 打赏
  • 举报
回复
关闭语句写作finally中比较好吧。不管之前的数据库操作是否成功,都关闭数据库的连接。
wxdxy 2009-02-04
  • 打赏
  • 举报
回复
没关系的吧
Goto1230 2009-02-04
  • 打赏
  • 举报
回复
用一个异常检查下,看看会有什么样的效果。
异常之前用
if()
……
try……
……
catch……
这样就比较容易的检查出问题的所在了!
archu 2009-02-04
  • 打赏
  • 举报
回复
调用close和dispose含义是相同的,连接应该是关闭了的,除非中间出现异常了。你可以用Windows自带的Performance Monitor来看看连接的使用情况,这个可能跟Oracle里边session的概念不一样。
此外,你可以看看以下两篇文章:
http://support.microsoft.com/kb/830173
http://support.microsoft.com/kb/929449
niitnanfeng 2009-02-03
  • 打赏
  • 举报
回复
mark
walkghost 2009-02-03
  • 打赏
  • 举报
回复
如果过程没有执行完的话,虽然连接已经关闭,但是连接是存在的,因为连接占用的资源没有被释放,你不必担心,如果不再使用,关闭后释放一下应该就行了。
oumeiren 2009-02-03
  • 打赏
  • 举报
回复
connection.Dispose();看看,应该就会释放了
xhan2000 2009-02-03
  • 打赏
  • 举报
回复
连接存在,只要没有Open就行了

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧