繁体   English   中英

为每个查询创建新的SQL连接是否有优势?

[英]Is there an advantage to creating a new SQL connection for each query?

我正在尝试设计一个连接到SQL数据库的高效应用程序,我想知道为每个SQL查询创建SQL连接的优点/缺点是什么,例如,像下面的代码一样,创建一个具有连接集的类,所以你可以在课堂上需要的时候给它打电话。

class SqlQuery
    {
        SqlConnection Connection = new SqlConnection(@myConnectionString);
          public void fillInfoData()
          {
              SqlCommand updateCommand = new SqlCommand(
                    @"my sql query", Connection);
              Connection.Open();
              updateCommand.ExecuteNonQuery();
              Connection.Close();
          }
    }

或者您应该为每个新查询创建一个新连接?

您打开每个查询的连接,然后当您关闭它时,它将返回到连接池,框架将管理其余的

因此,您不必担心保持连接活动,超时等...

MSDN文章

https://msdn.microsoft.com/en-us/library/8xx3tyca(v=vs.110).aspx

我认为他的意思不是保持一个开放的全局连接对象。 但是,您需要在需要时创建SqlConnection ,执行该点所需的所有查询(每个查询不是单个连接),然后关闭连接。

因此,如果您有一堆需要执行的查询,那么每个查询都不需要单个sql连接,但只需要一个。 但是,如果每次用户单击按钮时执行查询,最好在每次单击时打开连接,因为这样可以更轻松地管理关闭和处理连接。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM