IniFile:=TIniFile.Create(ExtractFilePath(Paramstr(0)) + 'Connect.ini');//通過INI連接
ServerName:=IniFile.ReadString('Option','DbServer','計算機');//讀取計算機名
DbName:=IniFile.ReadString('Option','DbName','資料庫');//讀取資料庫名字
DbSa:=IniFile.ReadString('Option','DbA','SA');//SA
Dbpwd:=IniFile.ReadString('Option','DbPw','密碼');//SA密碼
ADOConnection1.ConnectionString:='Provider=SQLOLEDB.1;Password='+Dbpwd+';Persist Security Info=True;User ID='+DbSa+';Initial Catalog='+DbName+';Data Source='+ServerName+' ';
我是通過在軟體運行目錄下,有個INI,里面記錄了資料庫資訊,這樣來進行連接,但是連接后,假如我把資料庫名字或者SA密碼等改掉,就會不停的報錯,怎么能利用TRY把資料庫如果連接不上的時候出一個預定的提示。
INI內容如下
Connect.ini
[Option]
DbServer=127.0.0.1//主機
DbName=Da//資料庫
DbA=sa
DbPw=123//密碼
uj5u.com熱心網友回復:
try
//可能出錯的代碼
except
on E: Exception do
begin
Application.MessageBox(PChar('自定義內容'), '標題欄', 16); // 自定義錯誤內容
// Application.MessageBox(PChar(E.Message), '標題欄', 16); //實際錯誤內容
end;
end;
uj5u.com熱心網友回復:
這段代碼,你應該有兩處需要用到try1、多數情況下,有類的創建的時候,盡可能使用 try ....finally,確保不管是否運行出錯,都進行類的釋放;
2、某些可能運行中由于引數或其他因素影響,可能會有例外的情況,使用try ....except,并在except后對可能的例外進行處理。
// INI檔案這里,通常需要使用到try
IniFile:=TIniFile.Create(ExtractFilePath(Paramstr(0)) + 'Connect.ini');//通過INI連接
try
ServerName:=IniFile.ReadString('Option','DbServer','計算機');//讀取計算機名
DbName:=IniFile.ReadString('Option','DbName','資料庫');//讀取資料庫名字
DbSa:=IniFile.ReadString('Option','DbA','SA');//SA
Dbpwd:=IniFile.ReadString('Option','DbPw','密碼');//SA密碼
finally
FreeAndNil(IniFile); //這里,不管前面是否有錯,都要進行釋放
end;
ADOConnection1.ConnectionString:='Provider=SQLOLEDB.1;Password='+Dbpwd+';Persist Security Info=True;User ID='+DbSa+';Initial Catalog='+DbName+';Data Source='+ServerName+' ';
try
ADOConnection1.Open;
except on E: Exception do
begin
//這里處理錯誤資訊
end;
end;
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/58522.html
標籤:語言基礎/算法/系統設計
