📄 dbbackupfrm.pas
字号:
unit DBBackupFrm;
interface
uses Windows, SysUtils, Classes, Graphics, Forms, Controls, StdCtrls,
Buttons, ExtCtrls, Dialogs, ComCtrls, CommonFunc, MainDM, uConfigMgr;
type
TDBBackupDlg = class(TForm)
Bevel1: TBevel;
Label1: TLabel;
EdtFileName: TEdit;
BtnBrowse: TButton;
AnimateDisplayer: TAnimate;
BtnBackup: TButton;
BtnRestore: TButton;
BtnCancel: TButton;
DlgSelectFile: TOpenDialog;
procedure BtnBrowseClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure BtnBackupClick(Sender: TObject);
procedure BtnRestoreClick(Sender: TObject);
procedure EdtFileNameChange(Sender: TObject);
private
{ Private declarations }
FFileName: string;
FConfigMgr: TConfigMgr;
public
{ Public declarations }
end;
var
DBBackupDlg: TDBBackupDlg;
implementation
{$R *.dfm}
procedure TDBBackupDlg.BtnBrowseClick(Sender: TObject);
begin
if DlgSelectFile.Execute then
begin
FFileName := DlgSelectFile.FileName;
EdtFileName.Text := FFileName;
FConfigMgr.DBBackupFileName := FFileName;
end;
end;
procedure TDBBackupDlg.FormCreate(Sender: TObject);
begin
FConfigMgr:= TConfigMgr.Create;
end;
procedure TDBBackupDlg.FormDestroy(Sender: TObject);
begin
FreeAndNil(FConfigMgr);
end;
procedure TDBBackupDlg.FormShow(Sender: TObject);
begin
FFileName := FConfigMgr.DBBackupFileName;
EdtFileName.Text := FFileName;
end;
procedure TDBBackupDlg.BtnBackupClick(Sender: TObject);
begin
AnimateDisplayer.Active := true;
DMMain.ADOCommandBackup.CommandText :=
'backup database SuperMarketManage to disk=''' + FFileName + '''';
try
DMMain.ADOCommandBackup.Execute;
except
LCShowMessage('备份失败!', '错误');
AnimateDisplayer.Active := false;
exit;
end;
LCShowMessage('备份成功!', '成功');
AnimateDisplayer.Active := false;
end;
procedure TDBBackupDlg.BtnRestoreClick(Sender: TObject);
begin
AnimateDisplayer.Active := true;
DMMain.ADOCommandBackup.CommandText :=
'restore database SuperMarketManage from disk=''' + FFileName + '''' + ' with replace';
DMMain.ADOConnectionMain.Close;
try
DMMain.ADOCommandBackup.Execute;
except
LCShowMessage('恢复失败!', '错误');
AnimateDisplayer.Active := false;
DMMain.ADOConnectionMain.Open;
exit;
end;
LCShowMessage('恢复成功!', '成功');
DMMain.ADOConnectionMain.Open;
AnimateDisplayer.Active := false;
end;
procedure TDBBackupDlg.EdtFileNameChange(Sender: TObject);
begin
if (Sender as TCustomEdit).Text = '' then
begin
BtnBackup.Enabled := false;
BtnRestore.Enabled := false;
end
else
begin
BtnBackup.Enabled := true;
BtnRestore.Enabled := true;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -