sql服务器调通了外网连接,需要解决的问题是:
(1)接入内网时,通过内网ip连接到数据库
(2)接入外网时,通过外网ip连接到数据库
目前我在数据模块用try except end可以实现功能,但问题是当地址1不能连接时需要好长时间才能连接到地址2,即,运行程序后,如果地址1不能连接时要过好长时间才能出来登陆界面。请教各位前辈有没有更好的办法解决。
下面是我用到的代码:
procedure TDM.DataModuleCreate(Sender: TObject);
begin
  conn1.Connected:=false;
  try
    conn1.ConnectionString:='Provider=SQLOLEDB.1;Password=***;Persist Security Info=True;User ID=sa;Initial Catalog=dbname;Data Source=内网ip';
    conn1.LoginPrompt:=false;
    conn1.Connected:=true;
  except
    conn1.connected:=false;
    conn1.ConnectionString:='Provider=SQLOLEDB.1;Password=***;Persist Security Info=True;User ID=sa;Initial Catalog=dbname;Data Source=外网ip';
    conn1.LoginPrompt:=false;
    conn1.Connected:=true;
  end;
end;