有没有比较通用的方法备份和恢复任何类型的数据库?

解决方案 »

  1.   

    最简单是就是复制,粘贴!begin
    if copyfile('D:\test\db\txgz\gzsjk.dbf','D:\test\db_bak\txgz\gzsjk_bak.dbf',false)
    and  copyfile('D:\test\db\zggz\gzjsk.dbf','D:\test\db_bak\zggz\gzjsk_bak.dbf',false)
     then
     application.MessageBox('数据备份成功','备份数据',mb_ok)
     else
      application.MessageBox('数据备份失败','备份数据',mb_ok);
    end;
    ,恢复时COPY回来就行了,但是因为数据可能在使用中很容易出错!!
      

  2.   

    此copyfile方法不通用:
    如果是sql server,oracle,sysbase等数据库好象不行把
      

  3.   

    如果拷贝文件不行的话,
    针对不同的数据库用不同的方法啊。不过,
    我还是习惯用不同数据库平台的SQL语句来做。
      

  4.   

    sql server
    可以用SQL自己的数据维护计划自己进行管理。
    在程序中怎么做,不知道了
      

  5.   

    可以使用BDE,在界面上让备份用户选择数据库类型、数据库名称等,就像BDE那样,然后备份选定的数据库。
      

  6.   

    根据不同的数据库平台写不同的SQL语句就行了,只是写程序时要写得通用一点.
      

  7.   

    1.用TBatchMove,delphi的安装目录的help下有例子2.用tclientdataset 或ADO的table\query  的savetofile  loadfromfile  3.自己写格式保存
      

  8.   

    要想完全通用是不太可能的,主要的方式是(以sql server),先选择目标数据库的类型,然后找到他的数据库文件,进行复制粘贴!到你想要辈分的文件夹。恢复时进行逆向操作!
      

  9.   

    用sql语句:backup database database_name to disk ='c:\....'.
      

  10.   

    现在做通用的东东好象不是什么好的选择,还是针对不同的数据库来做较稳妥
    sql下 backup database database_name to disk ='c:\....'.
          restore database database_name to disk ='c:\....'.
    方法好象不止一种
      

  11.   

    用TBatchMove可以做到通用,只要Bde支持的数据库都有可以
      

  12.   

    TBatchMove好象不支持ADO,如果是oracle,怎么备份其中的几张表的信息
      

  13.   

    TBatchMove可以,只要Bde支持的数据库都有可以