1:
高分请教:如何将sql server数据库备份(文件备份),在程序中用函数或者sql语句还原回sql server数据库服务器中,!??而不是使用“sql server企业管理器"的还原操作!2:如何把“sql server这样的服务器数据库”变成像access这样的客户端服务器??
也就是,不用执行sql server的安装,把sql server需要的dll,文件等,打包可以
使用!!!!!给出100分,

解决方案 »

  1.   

    第一个问题,写一个存储过程共前台调用
    通过:
    master..xp_cmdsheell  拷贝备份文件
    RESTORE DATABASE 语句恢复数据库。第二个问题好像没有必要那样做!既然你选择MSSQL
    有把他当Access来用,好像没有必要
      

  2.   

    第一个问题,用RESTORE DATABASE 语句恢复数据库。
    具体可以查一下sql server的帮助。第二个问题,用ado控件就可以不安装sql server 客户端,只需将connectionstring设置好就行,可以从准备好的ini配置文件里读取。
      

  3.   

    用RESTORE DATABASE 语句恢复数据库但是要注意,restore时,必须是独占模式下,以免发生冲突
      

  4.   

    to  
    xiaocuo_zrf(谁知我情深似海,全都是泪来灌溉)第二个问题:因为,程序如果给客户用的时候,
    为了减少客户安装备份的麻烦,所以
    能打包sql server在安装程序中,这样比较方便
      

  5.   

    主要是第二个问题!
    也就是
    能否把sql server当成access一样指定文件通过ADO访问
      

  6.   

    第一个问题,用RESTORE DATABASE 语句恢复数据库。
    具体可以查一下sql server的帮助。第二个问题,用ado控件就可以不安装sql server 客户端,只需将connectionstring设置好就行,可以从准备好的ini配置文件里读取。procedure Tbackup_form.BitBtn2Click(Sender: TObject);
    var
      str: String;
    begin
      adoquery1.Close;
    try
      if Edit1.Text = '' then
      begin
        MessageDlg('你还没有选择存放数据库的路径!', mtinformation, [mbok], 0);
      end
      else
      begin
      Edit1.Text:= Edit1.Text + 'cyry';
      with adoquery1 do
      begin
        close;
        sql.Clear;
        sql.add('use master Backup database cyry to disk='''+Edit1.Text+''' ');
        ADOQuery1.execsql;
      end;
        MessageDlg('备份成功', mtinformation, [mbok], 0);
      end;
    except
      on e:exception do
        MessageDlg(e.Message, mtinformation, [mbok], 0);
    end;
    end;