我用ado连接了一个access数据库,连接路径是c:\data\db1.mdb,
如果我要吧这个软件安装到其它的电脑上,数据库改到其它的目录下了,那该如何处理才能连接成功?

解决方案 »

  1.   

    动态连接,数据库和程序放在同一个目录下!
    adoconnection1.Close ; 
    adoconnection1.LoginPrompt :=false; 
    adoconnection1.ConnectionString :='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source='+extractfilepath(application.ExeName)+'gzsjk.mdb;'; 
    adoconnection1.Connected :=true;
      

  2.   

    如果你是用adoconnection的对话框来选择数据库的话,选择好了后,把那个绝对路径改为相对路径,或者只把路径去掉,只留下数据库名,这样的话,只要把数据库放在EXE文件一个文件夹下就行了
      

  3.   

    动态连接,数据库和程序放在同一个目录下!
    adoconnection1.Close ; 
    adoconnection1.LoginPrompt :=false; 
    adoconnection1.ConnectionString :='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source='+extractfilepath(application.ExeName)+'gzsjk.mdb;'; 
    adoconnection1.Connected :=true;请问这段代码应放在哪?
      

  4.   

    做个输入窗口把数据库的路径串给connectiontstring,
      

  5.   

    请问这段代码应放在哪?
    我觉得放在fromCreat里应该可以吧
    动态连接,数据库和程序放在同一个目录下!
    adoconnection1.Close ; 
    adoconnection1.LoginPrompt :=false; 
    adoconnection1.ConnectionString :='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source='+extractfilepath(application.ExeName)+'gzsjk.mdb;'; 
    adoconnection1.Connected :=true;
      

  6.   

    如果你用了DataModule化这段代码可放到:
    procedure TDataModule1.DataModuleCreate(Sender: TObject);
    begin
       //code...
    end;
      

  7.   

    可是新的问题又出来了
    error:Undeclared identifier:'application'
    error:')'expected but identifier'exename'found
      

  8.   

    做一个Function 或 Procedure 
    FormCreate中调用