我用delphi7+ado +oracle8开发一个管理系统,其中有40多个表,我如何用delphi实现其备份、恢复功能,高手帮忙,最好来点比较详细的资料或者解决方案。

解决方案 »

  1.   

    干吗用delphi做?oracle的EXP/IMP多好用?可以在delphi下调用exp命令来作
      

  2.   

    oracle没碰过,给个sql 2000参考,估计思路差不多用query1.sql.add('create database photo');
    query1.execsql //创建photo数据库备份数据库语句:backup database 原库 to disk='d:\backup' with name='backup database'
    execsql
    还原数据库: restore database photo from disk='d:\backup ' with recovery
    execsql
      

  3.   

    可以參考一下﹕procedure TForm1.Button1Click(Sender: TObject);
    begin
     adoconnection1.Connected:=true;  adoquery1.Close;
      adoquery1.SQL.Clear;
      application.ProcessMessages();
      try
        adoquery1.SQL.Add('backup database kxytest to disk='+#39+'f:\kxydata.dat'+#39);
        adoquery1.ExecSQL;
      except
        exit;  end;
    end;procedure TForm1.Button2Click(Sender: TObject);
    var str:string;
    begin
      adoconnection1.connected:=false;
      //str:='restore database kxytest from disk ="f:\kxydata.dat" with replace';
      adoquery1.Close;
      adoquery1.SQL.Clear;
     // 'ALTER  DATABASE  DataBaseName  SET  OFFLINE  WITH  ROLLBACK  IMMEDIATE';  adoquery2.SQL.Add('alter database kxytest set offline with rollback immediate');
      adoquery2.ExecSQL;  adoquery1.SQL.Add('restore database kxytest from disk='+#39+'f:\kxydata.dat'+'with replace'+#39);
      adoquery1.ExecSQL;  adoquery2.SQL.Add('alter database kxytest set online with rollback immediate');
      adoquery2.ExecSQL;  adoconnection1.Connected:=true;end;
      

  4.   

    94,94 备份恢复问题大多集中在sql2000了,甲骨文偶也是第一次开眼!
      

  5.   

    备份
    TClientdataset.savetofile();
    恢复
    TClientdataset.Loadfromfile();
    一条一条插入
    query1.append;
    query1.fieldbyname(...).asstring := Clientdataset.fieldbyname(...).asstring;
    ...
    query1.post;
      

  6.   

    我同意“挂月”的意见就是用EXP/IMP 如果你是管理员不是的话ORACLE只能一条一条写出来备份了也可以用专门的ORACLE备份软件也可以
      

  7.   

    没用过Oracle,不过可以试楼上的
      

  8.   

    备份数据库语句:backup database 原库 to disk='d:\backup' with name='backup database'
    还原数据库: restore database photo from disk='d:\backup ' with recovery