用于oracle的ADO.NET不会关闭连接

时间:2009-12-13 12:10:12

标签: oracle connection database-connection

当使用ADO.NET从oracle服务器连接oracle服务器时,即使我关闭了连接,连接仍然在Oracle服务器上处于非活动状态,因此由于每个用户的会话限制,无法建立新的连接,有没有办法确保所有连接都关闭?来自Oracle服务器或.NET应用程序。

提前致谢

2 个答案:

答案 0 :(得分:5)

由于connection pooling,连接是否可以保持打开一段时间?你能否粘贴一些显示如何关闭连接的代码?您也在使用ODP.NET或Microsoft提供的类吗?

您可以尝试关闭连接池(将;Pooling=false添加到ODP.NET中的连接字符串中)以查看您的问题是否是由于使用它而造成的(请注意创建新的物理连接到DB是一项昂贵的操作,因此您可能实际上不希望永久关闭连接池。

答案 1 :(得分:0)

类似于:

using (OracleConnection connection = new OracleConnection(connectionString))
{
    OracleCommand command = new OracleCommand(queryString);
    command.Connection = connection;
    try
    {
        connection.Open();
        command.ExecuteNonQuery();
    }
    catch (Exception ex)
    {
        Console.WriteLine(ex.Message);
    }
}