CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  数据库相关

数据库备份与恢复的问题

楼主xielittle(雲中漫步)2004-05-03 14:49:06 在 Delphi / 数据库相关 提问

在delphi中如何实现sql   server   数据库的备份,注意不是单个单个表的备份,我要的是整各数据库的备份!!!急,在线等待!! 问题点数:0、回复次数:3Top

1 楼fim(阿初)回复于 2004-05-03 15:01:34 得分 0

with   Query1   do     //备份数据库到文件  
  begin  
    Close;    
    SQL.Clear;  
    SQL.Text   :=   'backup   database   yourdatabasename   to   disk   =   :FileName';  
    Parameters.parambyname('FileName').value   :=   strFileName;  
    Execsql;  
  end;  
   
  with   Query1   do     //从以前的备份中恢复数据库;  
  begin  
    Close;    
    SQL.clear;  
    SQL.text   :=   'restore   database   yourdatabasename   from   disk   =   :FileName';  
    Parameters.parambyname('FileName').value   :=   strFileName;  
    Execsql;  
  end;  
  Top

2 楼zhlwyy(生活很累,但是因为生活才有意义。)回复于 2004-05-03 15:20:19 得分 0

unit   BackRestoreSQLDB;  
      {描述:SQL   SERVER   2000   数据库备份与恢复单元   ,本单元函数在SQL   SERVER   2000   +Delphi7.0编译通过  
      }  
  interface  
   
  uses  
      adodb,db;  
  function   repl_substr(sub_old,   sub_new,   s:   string):   string;   //把sub_old换成sub_new,后面有用。  
  function   BackupSQLDataBase(connstr_sql,DatabaseName,Backup_FileName:string):Boolean;//数据库备份函数  
  //SQL数据数据库备份,connstr_sql是ADO控件的connectionstring,DatabaseName是数据库名称,  
  //Backup_FileName要备份到的目   标文件  
  function   RestoreSQLDataBase(connstr_sql,DatabaseName,Restore_FileName:string):Boolean;//数据库恢复函数  
  //Restore_FileName以前备份的数据库文件,  
  implementation  
   
  function   repl_substr(sub_old,   sub_new,   s:   string):   string;  
  var  
      i:   integer;  
  begin  
      repeat  
          i   :=   pos(sub_old,   s);  
          if   i   >   0   then  
          begin  
              delete(s,   i,   Length(sub_old));  
              insert(sub_new,   s,   i);  
          end;  
      until   i   <   1;  
      Result   :=   s;  
  end;  
  function   BackupSQLDataBase(connstr_sql,DatabaseName,Backup_FileName:string):Boolean;  
  var  
  //备份SQL数据库SQL数据数据库备份,connstr_sql是ADO控件的connectionstring,DatabaseName是数据库名称,  
  //Backup_FileName要备份到的目标文件  
  aADOQuery:TADOQuery;  
  begin  
  try  
      aADOQuery:=TADOQuery.Create(nil);  
      aADOQuery.Close;  
      aADOQuery.ConnectionString:=connstr_sql;  
      aADOQuery.SQL.Clear;  
      aADOQuery.SQL.Add('backup   database   '+DatabaseName+'   to   disk   =   '   +   ''''   +   Backup_FileName   +   '''   with   format');  
      Try  
          aADOQuery.ExecSQL;  
      Result:=true;  
      Except  
          Result:=false;  
        exit;  
      end;  
    finally  
      aADOQuery.Free;  
    end;  
  end;  
  function   RestoreSQLDataBase(connstr_sql,DatabaseName,Restore_FileName:string):Boolean;  
  var//数据库恢复函数,estore_FileName以前备份的数据库文件  
  aADOQuery:TADOQuery;  
  begin  
  try  
      aADOQuery:=TADOQuery.Create(nil);  
      aADOQuery.Close;//恢复数据库不能打开数据库,要打开系统数据库master,把连接字符串如adoconnetion的connectionstring中的数据库名称换成"master"数据库  
      aADOQuery.ConnectionString:=repl_substr(DatabaseName,'master',connstr_sql);  
      aADOQuery.SQL.Clear;  
      aADOQuery.SQL.Add('RESTORE   DATABASE   '+DatabaseName+'   from   disk   =   '   +   ''''   +   Restore_FileName   +   '''');  
    Try  
          aADOQuery.ExecSQL;  
      Result:=true;  
    Except  
          Result:=false;  
        exit;  
      end;  
    finally  
      aADOQuery.Free;  
    end;  
  end;  
  end.    
   
   
  Top

3 楼hongama(执著地爱着delphi,深切地看着Java)回复于 2004-05-03 15:41:39 得分 0

老问题啊,搜索一下,一大队啊Top

相关问题

  • 数据库备份与恢复问题??
  • 数据库备份与恢复
  • 关于oracle数据库备份与恢复
  • pb中备份与恢复,数据库oracle8.05.如何写?
  • any where数据库备份与恢复如何实现。
  • 关于SQL 7.0数据库的备份与恢复的问题
  • 请教:关于数据库备份与恢复的问题。
  • 请教:关于数据库备份与恢复的问题
  • delphi数据库备份与恢复问题急!!!!!!
  • 再问关于数据库的备份与恢复(Delphi6+sqlServer2000)

关键词

  • sql server 2000
  • 数据库
  • 函数
  • 文件
  • sql
  • 备份
  • 恢复
  • sub
  • old
  • databasename

得分解答快速导航

  • 帖主:xielittle

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo