就是我不想用桌面数据库,直接用ADO连接,用一个变量获得程序路径,
然后在连接字符串中如何操作?能否给出源码?谢谢!!

解决方案 »

  1.   

    str:=ExtractFilePath(application.ExeName)+'111.mdb';
    ADOConnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+str+';Persist Security Info=False';
    adoconnection1.Connected:=true;
      

  2.   

    稍微详细一点var
      sconstr:string;//连接字符
      sdbpath:string;//路径
      smm:string;
    begin
      smm:='gggggggggg';//密码
      try
        G_StrExePath:=ExtractFilePath(Application.ExeName);//应用程序路径
        sdbpath:=G_StrExePath+'AA67.bmq';
        sconstr:='Provider=Microsoft.Jet.OLEDB.4.0;'+
               'User ID=Admin;Data Source='+sdbpath+';'+
               'Mode=Share Deny None;Extended Properties="";'+
               'Locale Identifier=2052;Persist Security Info=False;'+
               'Jet OLEDB:System database="";Jet OLEDB:Registry Path="";'+
               'Jet OLEDB:Database Password='+smm+';'+
               'Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=0;'+
               'Jet OLEDB:Global Partial Bulk Ops=2;'+
               'Jet OLEDB:Global Bulk Transactions=1;'+
               'Jet OLEDB:New Database Password="";'+
               'Jet OLEDB:Create System Database=False;'+
               'Jet OLEDB:Encrypt Database=False;'+
               'Jet OLEDB:Don''t Copy Locale on Compact=False;'+
               'Jet OLEDB:Compact Without Replica Repair=False;'+
               'Jet OLEDB:SFP=False';
        if DM1.ADOCn1.Connected = True then DM1.ADOCn1.Connected:=False;
        DM1.ADOCn1.ConnectionString:=sconstr;
        DM1.ADOCn1.Connected:=True;
      except
        Application.MessageBox('无法连接数据库!','错误',MB_OK+MB_ICONSTOP);
        Halt;
      end;end;
      

  3.   


    如何用ADO连接accsee数据库:
    首先放置一个ADOConnection控件ADOConnection1;
    然后双击该控件,在弹出窗口中选择build..按钮;
    在弹出的“数据连接属性”框中的“提供程序”页选择并双击:“Microsoft Jet 4.0 OLE DB Provider”到连接页;
    选择或输入数据库名称,测试一下就OK了;
    如果有密码,就在“数据连接属性”对话框选择“所有”(*特别注意:不是在“连接”页上去掉“空白”钩填密码的*)页在属性值中输入你的密码。
    LoginPrompt设为false,就不会弹出密码框了。然后放置一个ADOQuery1,将Connection 设为ADOConnection1;
    在SQL属性上点三个点的小按钮,输入:select * from 表名;再放一个DataSource1:
    Dataset属性设为ADOQuery1;再放一个DBGrid1:
    DataSource属性设为DataSource1;选择ADOQuery1,将Active设为True;DBGrid1中是不是显示了数据.更多事例见:http://www.kaer.cn/default.aspx////////////////////////////////////////////////////////////////////用ADO连接SQL SERVER数据库:
    首先放置一个ADOConnection控件ADOConnection1;
    然后双击该控件,在弹出窗口中选择build..按钮;
    在弹出的“数据连接属性”框中的“提供程序”页选择并双击:“Microsoft OLE DB Provider for SQL Server”到连接页;
    服务器名称中输入你的服务器名,下拉应当可以找到,也可以填SQL服务器的IP地址;
    登录方式由你根据你的SQL数据库安装情况选择,如果是使用用户名称和密码,最好将允许保存密码钩上;
    然后选择数据库(例如:master)。测试一下就OK了。
    LoginPrompt设为false,就不会弹出密码框了。然后放置一个ADOQuery1,将Connection 设为ADOConnection1;
    在SQL属性上点三个点的小按钮,输入:select * from MSreplication_options;再放一个DataSource1:
    Dataset属性设为ADOQuery1;再放一个DBGrid1:
    DataSource属性设为DataSource1;选择ADOQuery1,将Active设为True;DBGrid1中是不是显示了数据。//////////////////////////////////////////////////////////////
      

  4.   

    上边是静态实现的,只要将ADOConnection1.ConnectionString属性动态付值就是你所要的效果
      

  5.   

    可以把连接参数写入INI文件,而动态从INI文件中读取,然后拼在一起
    就是你想要的结果.这样也有助于你改变数据库.
      

  6.   

    用ADOX的EDITCONNECTIONSTRING吧,让用户自己选择建立连接字符串
      

  7.   

    同意楼上的意见,那样会更直接..
    但要在interface中增加单元uses ADOConEd;
    begin  
       EditConnectionString(ADOConnection1);
    end;