我正在使用mysql在c#中使用登录服务器,我有一个问题: 我在互联网上看到使用MySqlConnection和进行查询的正确方法是使用“using”语句,如下所示:
using (SqlConnection con = new SqlConnection(CNN_STRING))
{
using (SqlCommand cmd = new SqlCommand("COMMAND", con))
{
//do something
}
}
好吧,如果我使用它,连接将每次关闭并打开,对吧?问题是打开连接大约需要200ms,每次尝试进行查询时都需要这段时间吗?
答案 0 :(得分:4)
好吧,如果我使用它,连接将每次关闭并打开,对吧?
它将自动关闭。在使用之前,您仍然必须打开。
问题是打开连接需要大约200毫秒,每次我尝试进行查询都需要这段时间吗?
你必须尝试并测量它以确定,但是连接是在.NET中汇集的,所以创建一个并不是一个昂贵的过程。是否打开,如果不尝试,每次都会花费相同的时间,因为它取决于您的网络质量。
以推荐的方式尝试,如果它成为您的应用的可衡量的问题,那么寻找其他解决方案。
请勿在应用程序生命周期内保持连接打开的频谱的另一端。如果你这样做,那么你必须经常检查以确保连接仍然是打开的(因为它可以通过其他方式关闭),并可能导致其他问题。
答案 1 :(得分:0)
都能跟得上!只需确保您使用的逻辑在使用块内。它将被正确连接和处理。
答案 2 :(得分:0)
这应该打开你的连接并在using
块的末尾正确处理它。
using (SqlConnection con = new SqlConnection(CNN_STRING))
{
SqlCommand cmd = new SqlCommand("COMMAND, con);
//do something
}