const
  dbconnstr1='Provider=Microsoft.Jet.OLEDB.4.0;Data Source="';
  dbconnstr2='";Persist Security Info=False';
apppath:=extractfilepath(application.exename);
ADOConnection1.ConnectionString:=
dbconnstr1+apppath+'db\a.mdb'+dbconnstr2;
这是ACCESS的,SQLSERVER同理

解决方案 »

  1.   

    Provider=[驱动程序];Password=[密码];Persist Security Info=True;User ID=[用户名];Data Source=[数据源别名]将用户选择的结果拼凑成如上的一个字符串,然后
    ADOConnection1.connected:=false;
    ADOConnection1.ConnectionString:=[拼凑的字符串];
    ADOConnection1.LoginPrompt:=false;
    ADOConnection1.connected:=true;
      

  2.   

    建议你使用数据连接文件 .udl,使用方法:ADOConnection1.ConnectionString:='File Name=path\xx.udl';你可以在程序外手动改变xx.udl的设置,无需改源程序.
      

  3.   

    建议你使用数据连接文件 .udl使用方法:ADOConnection1.ConnectionString:='File Name=path\xx.udl';你可以在程序外设置xx.udl,无需改变源程序.
      

  4.   

    renzhm(戴尔飞):能不能举例说说.udl如何设置阿
      

  5.   

    谢谢同志们!
    但我就是想要在程序运行时调出程序设计时定义ADOConnection1的ConnectionString定义对话框,如何实现????
      

  6.   

    我建议你建立一个INI文件,在运行前设定INI中各串的配置就行。
      

  7.   

    调出定义对话框:  EditConnectString(ADOConnection1);
      

  8.   

    用 回复人: renzhm(戴尔飞) 所说的方法时,
    别忘了加上
    uses ADOConEd
    ////////////还可以这样  ADOConnection1.ConnectionString := PromptDataSource(Handle, ADOConnection1.ConnectionString);
      

  9.   

    我是这样做的:
        把所有数据链接放在数据模块中,然后把所以active设为false;
    在module1的建立事件中设置 adoconnection.ConnectionString='链接字符串'如果过长可以用+链接.
     如果想在程序开始中指定数据库可以在这之前显示一个窗体,通过edit等控件得到输入的数据库名,然后把adoconnection.ConnectionString='链接字符串'中的数据库替换就可以了.
    最后通过代码把连接激活
      

  10.   

    http://www.csdn.net/cnshare/soft/13/13111.shtm有个很好的例程