函数功能: 在项目中,会有一种场景:需要提前判断本地或远程数据库是否可以连接上。
在运行时,发现这个方法在数据库无法连接时,会有很长时间的等待时间(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 } }//判定数据库是否连接成功