函数功能:
在项目中,会有一种场景:需要提前判断本地或远程数据库是否可以连接上。
在运行时,发现这个方法在数据库无法连接时,会有很长时间的等待时间(30秒)。这和数据库的最大连接超时时间有关,可以在数据库连接字符串中添加一项来设置这个连接等待时间:
private bool SqlConnectCheck()
{
string connectionString = PubVar.connStr + ";Connect Timeout=0.3"; //增加设置连接最大等待超时时间
try
{
using (SqlConnection conn = new SqlConnection(connectionString))//创建连接对象,并使用using释放(关闭),连接用完后会被自动关闭
{
conn.Open(); // 打开数据库连接
if (conn.State == ConnectionState.Open)//如果数据库打开
{
Pic_SQL.Image = Properties.Resources.数据库_OK;//加载OK图片
conn.Close(); // 关闭数据库连接
return true;//返回true
}
else
{
Ck_Check.Enabled = false;
Ck_SeveData.Enabled = false;
Pic_SQL.Image = Properties.Resources.数据库_NG;//加载NG图片
conn.Close(); // 关闭数据库连接
return false;//返回false
}
}
}
catch (Exception)
{
Ck_Check.Enabled = false;
Ck_SeveData.Enabled = false;
Pic_SQL.Image = Properties.Resources.数据库_NG;//加载NG图片
return false;//返回false
}
}//判定数据库是否连接成功