小弟刚学习DELPHI,不过以前有一定的编程基础,我想问高手们,
我想用代码动态连接数据库,就是一些数据库连接的信息从ini文件里面读取出来,使用ado连接就可以了,不知道具体代码怎么样,我发现DELPHI这个方面的书太少了,谢谢高手指导。

解决方案 »

  1.   

    ini 文件:服务器名=servername
    数据库名=databasename
    用户名=username把这些信息读出来组合成连接字符串就可以了
      

  2.   

    //连接SQL Server
    function TFrmlog.GetConnectionString: Boolean;
    var
      SYSINI: TINIFile;
      ServerName, UserName, Password, InitDB: string;
    begin
      Result := False;
      ClientDM.ADOConnection.Connected := False;
      if ClientDM.ADOConnection.Connected = False then begin
         try
           SYSINI := TIniFile.Create(getcurrentdir + '\INI\server.ini');
           ServerName := SYSINI.ReadString('Database', 'ServerName', '127.0.0.1');
           UserName := SYSINI.ReadString('Database', 'UserName', 'sa');
           InitDB := SYSINI.ReadString('Database', 'InitDB', 'Room');
           Password := SYSINI.ReadString('Database', 'Password', '');
         finally
           SYSINI.Free;
         end;
      end;  try
        ClientDM.ADOConnection.ConnectionString := 'Provider=SQLOLEDB;Password='
          + Password + ';Persist Security Info=True;User ID='
          + UserName + ';Initial Catalog=' + InitDB
          + ';Data Source=' + ServerName;
        ClientDM.ADOConnection.Connected := True;
        Result := True;
      except
        Result := False;
      end;
    end;INI配置文件夹:
    [Database]
    ServerName=192.168.1.133  //局域网内的另一台电脑的IP
    InitDB=Room              // 数据库
    UserName=sa             //登录数据库的用户名
    Password=8251043         //密码希望对你有帮助呀
      

  3.   

    直接保存ConnectionString应该就可以了!
    不光是只要在ini中占一个栏位,
    而且可以是任何数据库。象楼上应该是只使用sqlserver,到了oracle中就只需要3个栏位就ok了!