在用ADOConnection连接数据库时,当数据库连不上时会自动跳出一个对话框,如何去掉此对话框和我要编写自己的出错提示信息要怎么写??

解决方案 »

  1.   

    可以用
    try
      adoconnection1.connected:=true;//或者adoconnection1.open;
    except
      showmessage('error');
    end;
      

  2.   

    if data.cn.Connected=false then
        try
          data.cn.ConnectionString:='';
          if data.database.Caption='access' then data.cn.ConnectionString:='DBQ='+edit1.Text+'SUPERVISE.MDB;DefaultDir='+data.server.Caption+';Driver={Microsoft Access Driver (*.mdb)};DriverId=281;FIL=MS Access;MaxBufferSize=2048;MaxScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;UID=admin;password=21233382135761;UserCommitSync=Yes';
          if data.database.Caption='sql server' then data.cn.ConnectionString:='Provider=MSDASQL.1;Persist Security Info=False;Extended Properties="DRIVER=SQL Server;SERVER='+edit1.Text+';UID='+edit2.Text+';PWD='+edit3.Text+';DATABASE=NHII"';
          data.cn.Connected:=true;
        except
           showmessage('数据与服务器连接不正常,请检查服务器设置!');
           Panel1.visible:=false;
           panl.visible:=true;
           exit;
        end;
      

  3.   

    将 ADOConnection1属性中的connected设置为true
    问题就搞定
      

  4.   

    我是在程序中用字符串连接的,肯定要用OPEN,但是他还是要提示对话框,什么原因?
      

  5.   

    不错就是KJ_wang(平凡)兄所言,请问ADO就没连接出错的事件或过程吗??
      

  6.   

    你把LoginPrompt := false;呢??
      

  7.   

    yoic 兄,是一样,我的地址和密码都没有问题。主要是当连不上数据库时,它不是会跳出一个对话框呀,现在我不要这个对话框,我想我自己来控制。比方说重试呀。
      

  8.   

    onwillconnect事件  当请求连接后出触发
    在这里做判断可以吗
      

  9.   

    问题已解决,我错误的把ADO放在了try的外面,一定要放在里面才对。
    sorry