函數功能:
在項目中,會有一種場景:需要提前判斷本地或遠程數據庫是否可以連接上。
在運行時,發現這個方法在數據庫無法連接時,會有很長時間的等待時間(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 } }//判定數據庫是否連接成功