怎么用DELPHI备份数据库啊?在线等
解决方案 »
- delphi 编程规范文档;工程项目文档;项目技术文档
- 请教关于SQL的问题!
- 寻求帮助:将彩色jpg图像压缩转换成tif格式,急!
- 大家推荐几个高手的blog 收藏 收藏!
- Delphi7的TActionManager的xpstyle在windowxp下,拖动的时候经过的按钮的蓝框都没有消失,在慢机上更是突出。
- 请delphi鸟窝的兄弟来领分1
- 初学存储过程遇到的问题:新建一张表的存储过程怎么写?
- 如何在一个edit里面显示系统当前时间呀?一经解决马上给分!
- windows不同用户下,安装delphi控件问题!!!
- 在Web开发中怎样使用数据流来进行提交很多的字符串?
- 提问,如何在RichEdit或RxRichEdit中显示GIF图片呢?
- 晕倒!一个关于ModalResult赋值报错的问题。
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons, ExtCtrls;type
TdlgBackUpRestore = class(TForm)
btBackUp: TSpeedButton;
btRestore: TSpeedButton;
Label1: TLabel;
btClose: TSpeedButton;
OpenDialog1: TOpenDialog;
Image1: TImage;
procedure btBackUpClick(Sender: TObject);
procedure btRestoreClick(Sender: TObject);
procedure btCloseClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
dlgBackUpRestore: TdlgBackUpRestore;implementationuses DMu, PubDB;{$R *.dfm}procedure TdlgBackUpRestore.btBackUpClick(Sender: TObject);
begin
Caption := '正在备份数据库...';
with DM.T do
begin
Close;
SQL.Text := 'BACKUP DATABASE [Dress] TO DISK = ''' + FORMATDATETIME('YYYYMMDD', GetServerDateTime) + ''' WITH NOFORMAT, SKIP, NOUNLOAD, STATS = 10';
try
ExecSQL;
Caption := '祝贺您, 数据备份操作成功';
btBackup.Enabled := False;
except
Application.MessageBox('操作失败, 请检查磁盘的写保护!', '提示', MB_OK);
Abort;
end;//try
end;//with DM.T do
end;procedure TdlgBackUpRestore.btRestoreClick(Sender: TObject);
var
sFileName: ShortString;
begin
if MessageDlg('真的要恢复数据库吗?此操作将不可逆转!', mtConfirmation, [mbYes, mbNo], 0) = mrYes then
begin
Caption := '正在恢复数据库...';
if OpenDialog1.Execute then
begin
sFileName := TRIM(OpenDialog1.Files.Text);
with DM.T do
begin
Close;
SQL.Text := 'RESTORE DATABASE [Dress] FROM DISK = ''' + sFileName + ''' WITH FILE = 1, RECOVERY, NOUNLOAD, STATS = 10';
try
ExecSQL;
Caption := '祝贺您, 数据恢复操作成功';
btRestore.Enabled := False;
except
Application.MessageBox('操作失败, 数据库使用中或者路径有误!', '提示', MB_OK);
Abort;
end;//try
end;//with DM.T do
end;//OpenDialog1.Execute then
end;//mrYes
end;procedure TdlgBackUpRestore.btCloseClick(Sender: TObject);
begin
Close;
end;end.
RESTORE DATABASE 和 BACKUP DATABASE剩下的就是用adoquery来执行了。