只是一个普遍的问题,如果我在我的程序中打开OleDbConnection,我应该在某个时候关闭它吗?我只是问,因为我看过一些教程,其中演示者没有包含关闭连接的声明。
在我的具体情况下,我打开一个连接来访问Excel文件,填充DataTable并获取一些值。在那之后,我没有理由让连接打开,我认为如果我把它打开就可能会引起一些问题。
此外,语句conn.Close();
是否足以关闭连接?
答案 0 :(得分:5)
是的,您应该在完成后立即关闭连接。如果您在一种方法中使用连接而不是在一次方法之后立即使用,请关闭并处理它,以便清理它。
您应该在using
语句中包装连接的创建,因为它甚至会在发生异常时关闭并处理连接。
using (OleDbConnection conn = new OleDbConnection(...))
{
// use the connection inside here
}
答案 1 :(得分:5)
您应该使用using
块,以确保连接已正确关闭和处理。
using (OleDbConnection connection = new OleDbConnection(connectionString))
{
connection.Open();
//Do some work
}//The connection is automatically closed when the code exits the using block.
进一步阅读here