gpt4 book ai didi

sql - 创建单个或多个 SQL 连接以多次执行相同的查询更好吗?

转载 作者:行者123 更新时间:2023-12-05 04:12:48 26 4
gpt4 key购买 nike

我每 2 秒执行一次相同的命令。我认为以下代码会创建多个连接:

[System.Web.Services.WebMethod]
public static int getActivity()
{
using (SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["dbconnection"].ToString()))
{
connection.Open();
using (var cmd = new SqlCommand("SELECT TOP 1 ValueX FROM TABLE WHERE ID= 2 AND EVENTID = 2 ORDER BY DATE DESC", connection))
{
var x = cmd.ExecuteScalar();
int Result;

if (x != null)
{
Result = int.Parse(x.ToString());
Console.WriteLine("USER ACTIVITY : " + Result);
}
else
{
Result = -999;
}
connection.Close();
return Result;
}
}
}

如果我多次调用这个方法,下面的代码是建立多连接还是单连接?

 using (SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["dbconnection"].ToString()))

谁能解释一下我是否需要修改这段代码,或者这段代码好吗?

谢谢。

最佳答案

由于您使用的是 using statement子句所以一旦你完成了这个方法,资源就会被释放,连接也会被关闭。所以每次当你调用相同的方法时,都会建立一个新的连接。当您使用 using 子句时,它等同于以下代码:

SqlConnection connection = null;
try
{
connection = new SqlConnection(connectionString);
}
finally
{
if(connection != null)
((IDisposable)connection).Dispose();
}

另请注意,您无需在方法中显式调用 connection.Close();,因为 using 语句会处理它。

关于sql - 创建单个或多个 SQL 连接以多次执行相同的查询更好吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39508338/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com