Sql Server连接问题?

时间:2013-01-14 07:52:19

标签: sql-server database-connection

我正在开发一个C#项目。我的程序适用于SQL Server。

以下哪种方法是正确的?

  1. 我启动程序时打开SQL Server连接,当我关闭程序时,SQL连接也会关闭。

  2. 我需要使用SQL时打开SQL Server连接,并在完成工作后关闭它。

2 个答案:

答案 0 :(得分:1)

你告诉我们。两者都是正确的。一个是不好的做法,一个是正常情况下的良好做法,但技术上都是有效的。

取决于具体情况。通常你只使用2 - 这有很多优点,例如当服务器停机或几秒钟时不必处理重置的事件。这也意味着你可以轻松地进行多线程并使用多个连接 - 这个时刻早些时候而不是之后,当大多数junoir开发人员意识到他们宁愿做其他事情,因为它变得复杂了。

这完全不是C#问题。在过去的20年中,它是一个“如何使用数据库”的通用,与我曾经使用过的每个数据库相关。

答案 1 :(得分:0)

两者都是正确的,但最佳做法是使用

using (SqlConnection connection = new SqlConnection(connectionString))
{
    connection.Open();
    //Do something
}

使用块结束后,这将调用Dispose。阅读有关连接和连接池http://msdn.microsoft.com/en-us/library/8xx3tyca(v=vs.80).aspx

的信息