我现在用的ado做连接,使用ADOconnecting,ADOquery控件,对数据库连接进行操作
现在如果把程序放到另外一台服务器上,而且没有delphi,不能修改怎么办?是不是能转成使用odbc数据源?谁能告诉我??还是程序如何打包??

解决方案 »

  1.   

    把你的ADO连接做成可配置的,在你的程序中取读取特定的文件或者注册表来控制连接,连接方式也是可选,在程序中写;程序打包可以用打包软件;
      

  2.   

    高深,how to do that??
      

  3.   

    哥们,教教我啊ado怎么在不使用编辑器的情况下,改变连接的数据库
      

  4.   

    改变Connection 或者ConntionString就可以
      

  5.   

    conntingstring:='';需要 输入那些属性呢 ??还有delphi打包 发行的话用什么工具呢??
      

  6.   

    在打包完成后,安装之后,如何修改string????
      

  7.   

    1.可先记入INI文件(Config.ini)
    [DB]
    ServerName=服务器名或IP地址
    DBName=数据库名
    LoginName=登录名
    LoginPWD=登录密码2.再在程序中读入
    //全局变量(或记入一个类中)
    var
      DBServerName,DBName,DBLoginName,DBLoginPWD: String;procedure TForm_main.Read_ini;
    var
     inifile: TIniFile;
    begin
      inifile:=TIniFile.Create(ExtractFilePath(ParamStr(0))+'Config.ini');
        //读取SQL服务器信息
        DBServerName:=inifile.ReadString('DB','ServerName','ERROR');    //读取SQL服务器名或IP地址
        DBName:=inifile.ReadString('DB','DBName','ERROR');             //读取要登录的数据库名
        DBLoginName:=inifile.ReadString('DB','LoginName','ERROR');    //读取登录SQL服务器的登录名
        DBLoginPWD:=inifile.ReadString('DB','LoginPWD','ERROR');    //读取登录SQL服务器的登录密码
      inifile.Free;
    end;3.连接数据库
    function TForm_main.SetConnect(): boolean;
    var
      wstr_conn: String;
    begin
      Try
        wstr_conn:='Provider=SQLOLEDB.1;Persist Security Info=True;';
        wstr_conn:=wstr_conn+'Data Source='+DBServerName+';';
        wstr_conn:=wstr_conn+'Initial Catalog='+DBName+';';
        wstr_conn:=wstr_conn+'User ID='+DBLoginName+';';
        wstr_conn:=wstr_conn+'Password='+DBLoginPWD+';';
        ADOconnecting.Connected:= False;
        ADOconnecting.ConnectionString:=wstr_conn;
      Except
        Result:= False;
        exit;
      End;  Try
        ADOconnecting.Connected:= True;
        Result:= True;
      Except
        Application.MessageBox(PChar('连接数据库失败,原因有以下几种:'+#13#13+'1.数据服务器IP不正确或网络不连通'+#13+'2.登录的数据库名不正确'+#13+'3.数据库登录名或登录密码错误'),'登录失败',mb_IconError);
        Result:= False;
        exit;
      End;end;//end function4.在程序开始时调用就可以了.