当使用ADO.NET从oracle服务器连接oracle服务器时,即使我关闭了连接,连接仍然在Oracle服务器上处于非活动状态,因此由于每个用户的会话限制,无法建立新的连接,有没有办法确保所有连接都关闭?来自Oracle服务器或.NET应用程序。
提前致谢
答案 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);
}
}