代码如下:
-----------------------------
try
DM.ADOConnection1.Open;
except
begin
ShowMessage('无法连接到数据库!');
Application.Terminate;
end;
end;
-----------------------------
我故意将Sql Server 服务器关闭,然后执行程序,结果弹出错误信息:Sql Server不存在或拒绝访问!
而不是我希望出现的那个ShowMessage('无法连接到数据库!');也就是说:Try ....Except 没有捕捉到“无法连接”的错误。怎样才能捕捉得到呢?
-----------------------------
try
DM.ADOConnection1.Open;
except
begin
ShowMessage('无法连接到数据库!');
Application.Terminate;
end;
end;
-----------------------------
我故意将Sql Server 服务器关闭,然后执行程序,结果弹出错误信息:Sql Server不存在或拒绝访问!
而不是我希望出现的那个ShowMessage('无法连接到数据库!');也就是说:Try ....Except 没有捕捉到“无法连接”的错误。怎样才能捕捉得到呢?
DM.ADOConnection1.connectionString:='//在此加上数据库连接的语句
DM.ADOConnection1.Open;
except
ShowMessage('无法连接到数据库!');
Application.Terminate;
end;
//去掉begin end
请问1楼: //去掉begin end ? 为何??? 老兄Delphi基础没打扎实吧?
按说这个也不应该啊,try Except不在delphi开发调试环境下连接不通就应该跳到except去执行的
而你的笔记本环境不认为这是异常,而是正常弹出sqlserver不存在的信息
另外1楼的建议也没有错,加个begin end没什么用,不过加上去掉应该不是问题的所在