我想通过bde指定在安装程序时给ADOConnection指定数据库连接,不希望在程序中就已经指定ConnectionString属性.
请问各位大虾,我该如何处理

解决方案 »

  1.   

    ConnectionString不过就是拥有自己特定关键字的字符串组合,你先把连接字符串中需要包含的各项内容含义搞明白,然后自然就明白了。
      

  2.   

    在程序外设置一个联接文件,程序启动时读取其中的参数,拼合成一个字串后赋给ConnectionString属性就可以了。
    用户只需更改这个配置文件就可以实现联接到不同的数据库的目的了。
      

  3.   

    我的意思就是楼上说的那样,我写了个ConDB.ini文件,内容是相应的数据库连接参数.
    我在程序中是这样指定连接参数的:ADOConnection1.ConnectionString :='D:\ConDB.ini'
    但程序报错,不知我的写法有错吗?
      

  4.   

    ConnectionString 是有固定格式的,
    固定格式+不固定变量 
    比如:
    SQL SERVER; DB= MYTestDB, sa= '1234'
    你要在ConDB.ini里读这些密码,用户名,数据库名把ConnectionString 填完整
      

  5.   

    不可以!可以这样
    procedure TDMEAM.DataModuleCreate(Sender: TObject);
    var
      sServerName,sDatabaseName,sDataUser,sDataPw,sAdoConString :String;
      List: Tinifile;
    Begin
      If ADOConnectionEAM.Connected Then
        ADOConnectionEAM.Connected := False;
    Try
        List := Tinifile.Create(ExtractFilePath(Application.ExeName)+'DataSet.ini');
        sServerName:=list.readstring('LdEamDataSet','sServerName','');
        sDatabaseName:=list.readstring('LdEamDataSet','sDatabaseName','');
        sDataUser:=list.readstring('LdEamDataSet','sDataUser','');
        sDataType:=list.readstring('LdEamDataSet','sDataType','');
         sAdoConString :='Provider=SQLOLEDB.1;Persist Security Info=True;User ID='+sDataUser+';Password=ldmaster;Initial Catalog='+sDatabaseName+';Data Source='+sServerName;
        ADOConnectionEAM.ConnectionString:=sAdoConString;       
      Finally
        List.free;
      End;
    Try
        ADOConnectionEAM.Connected := True;
      Except
        ShowMessage('数据库连接失败,请重新配置!');
        Exit;
      End;
    End;
      

  6.   

    我是按照ADOConnection的ConnectionString属性向导指定好连接,将其自动生成的格式串拷贝出来保存成以上的ini文件.
    我写成ADOConnection.ConnectionString := '文件名.ini'
        ADOConnection.Connected := true;
    运行程序,报错.提示连接有问题.
      

  7.   

    >>我写成ADOConnection.ConnectionString := '文件名.ini'晕,,不能以这种方式来赋值给ADOConnection.ConnectionString,还没有这么智能文件名.ini里的配置信息,是要自己读取后字符串变量后, 赋值给DOConnection.ConnectionString,
      

  8.   

    多谢各位帮忙,顺便问以下:对于ini文件写数据库配置文件有什么格式吗?若按照ADOConnection的ConnectionString属性向导指定好连接,将其自动生成的格式串拷贝出来保存成以上的ini文件,在用代码读取信息可以吗?是不是必须把其写成相应的什么格式才能读取如urserID等信息.请给我个例子.
      

  9.   

    ConnectionString就是一字串,你通过字符操作拼成自动生成的格式串的样子再赋值就可以了
      

  10.   

    晕,你直接在csdn上搜索就能搜出一大把,我都在上面贴过代码了
      

  11.   

    http://community.csdn.net/Expert/topic/4864/4864848.xml?temp=.1163599