作者piscismemory (魚)
站內C_Sharp
標題[問題]請問如何確定資料庫有開啟?
時間Sat May 8 14:41:43 2010
請問各位大大們
我用
try{
conn.open(connectionstring);
}
catch{
return false;
}
開啟資料庫
但如果資料庫沒開
會延遲很久才回應
請問是否有可以快速偵測資料庫有開啟的方法
感謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.221.67.175
1F:→ evirtues:不確定你是不是用OleDbConnection,如果是的話就用 05/08 15:08
2F:→ evirtues:if (conn.State == ConnectionState.Open) 判斷 05/08 15:09
3F:→ piscismemory:感謝…但在.open時,如果主機沒開機,會回應很慢 05/08 16:26
4F:→ piscismemory:不知道是否有辦法很快就偵測到 05/08 16:29
5F:→ chancewen:ado net一般資料庫都有提供timeout連線字串設定 05/08 16:36
6F:推 alwang:原PO要問的是DB有沒有開 不是有沒有跟DB連線吧? 05/08 18:59
7F:→ evirtues:在你的connection string中加上"Connect Timeout=秒數;" 05/08 20:53
8F:→ evirtues:預設是15秒,如果設定0秒會永遠等待。 05/08 20:55
9F:→ piscismemory:先感謝二位大大…我再試看看設timeout秒數 05/09 08:50
10F:→ piscismemory:目前設了Connection Timeout=2,但還是沒用… 05/11 11:09
11F:→ piscismemory:不知道那發生問題了 05/11 11:09
12F:推 pericles:如果該電腦連開機也沒開,那在網路通訊層就擋住了 05/11 23:53
13F:→ pericles:Timeout 設定就會無效 05/11 23:54