数据库备份与还原的程序代码

lhl123hk 2006-04-27 10:18:02
DELPHI与SQL做数据库备份与还原的程序怎么写?给个例子
...全文
296 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
slipsun 2006-04-30
  • 打赏
  • 举报
回复
加个open、saveDialog就好了。
lhl123hk 2006-04-28
  • 打赏
  • 举报
回复
谢谢!
能帮助改一下程序,使它能选择备份与还原路径!
小弟再次非常感谢啦!!
slipsun 2006-04-27
  • 打赏
  • 举报
回复
对.如果单用户的就无所谓了.
:)
luckyboy97 2006-04-27
  • 打赏
  • 举报
回复
补充说明一下楼上兄弟的dmData.adoQryTmp,应该连接的是系统MASTER数据库,备份还原之前应该关闭要备份还原的数据库连接
slipsun 2006-04-27
  • 打赏
  • 举报
回复
结帖给分吧.
slipsun 2006-04-27
  • 打赏
  • 举报
回复
备份:
procedure TBackupFrm.BitBtn2Click(Sender: TObject);
begin
if Edit1.Text= '' then
begin
Showmessage('无选择要保存的文件名');
exit;
end;
try
try
dmData.adoQryTmp.Active:= false;
dmData.adoQryTmp.SQL.Clear;
dmData.adoQryTmp.SQL.Add('BACKUP DATABASE [dzyl] TO DISK = '''+edit1.text+''' WITH INIT');
dmData.adoQryTmp.ExecSQL;
finally
begin
dmData.adoQryTmp.Active:= false;
Showmessage('数据库备份成功!');
end;
end;
except
on e:exception do
begin
ShowMessage('数据库备份失败!');
end;
end;
end;
---------------
恢复
procedure TBackupFrm.BitBtn4Click(Sender: TObject);
begin
if Edit2.Text = '' then
begin
showmessage('未选择要恢复的数据库文件!');
exit;
end;
with dmData do
begin
try
adocmmd.CommandText:='use master';
adocmmd.Execute;
adocmmd.CommandText:=' alter database dzyl set offline with rollback immediate';
adocmmd.Execute;
adocmmd.CommandText:='restore database dzyl from disk= '''+edit2.Text+''' with recovery ';
adocmmd.Execute;
adocmmd.CommandText:=' alter database dzyl set online with rollback immediate';
adocmmd.Execute;
showmessage('数据库恢复成功!');
application.Terminate;
except
on e:exception do
begin
showmessage('数据库恢复失败!'+e.Message);
end;

end;
end;


end;

2,507

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧