📄 backup.pas
字号:
unit backup;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Mask, ToolEdit, StdCtrls, ExtCtrls,ADODB,DB, ComCtrls;
type
TFormbackup = class(TForm)
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Button2: TButton;
Button1: TButton;
RadioGroup1: TRadioGroup;
Edit2: TEdit;
RadioGroup2: TRadioGroup;
pbar1: TProgressBar;
Label4: TLabel;
Edit1: TEdit;
Button3: TButton;
FileEdit1: TEdit;
SaveDialog1: TSaveDialog;
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure RadioGroup1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Edit1Exit(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Formbackup: TFormbackup;
implementation
uses datamol;
{$R *.DFM}
procedure TFormbackup.Button2Click(Sender: TObject);
begin
close;
end;
procedure TFormbackup.Button1Click(Sender: TObject);
var
f: textfile;
names,comm,database,date,path,myfile,medium,fline: string;
begin
button1.enabled:=false;
button2.enabled:=false;
myfile:=extractfilepath(application.ExeName)+'data\login.ini';
assignfile(f,myfile);
reset(f);
readln(f,fline);
database:=copy(fline,pos('=',fline)+1,20);
names:=edit1.text;
date:=edit2.text;
path:=fileedit1.text;
if radiogroup2.ItemIndex=0 then
medium:='disk'
else
medium:='tape';
with datamod do
try
begin
pbar1.max:=1;
pbar1.position:=0;
pbar1.step:=1;
query1.close;
query1.sql.text:='exec sp_addumpdevice '''+medium+''','''+names+''','''+path+''' ';
query1.execsql;
if RadioGroup1.ItemIndex=0 then
comm:='backup database '+database+' to '+names+' with noinit,nounload,noskip,stats='+date+',noformat,name='''+names+''''
else
comm:='backup log '+database+' to '+names+' with noinit,nounload,noskip,stats='+date+',noformat,name='''+names+'''' ;
with datamod.query1 do
begin
sql.text:=comm;
label1.caption:='';
label1.update;
pbar1.stepit;
Execsql;
application.messagebox('资料备份已完成!','备份成功',mb_ok+mb_iconinformation);
close;
end;
end;
except
application.messagebox('你输入的资料名或备份路径资料名已存在!.','相同资料名',mb_ok+mb_iconerror);
end;
button1.enabled:=true;
button2.enabled:=true;
end;
procedure TFormbackup.FormClose(Sender: TObject; var Action: TCloseAction);
begin
formbackup:=nil;
action:=cafree;
end;
procedure TFormbackup.RadioGroup1Click(Sender: TObject);
begin
if RadioGroup1.ItemIndex=0 then
begin
edit2.text:='1';
edit1.text:='D'+formatdatetime('yymmddhhmm',now);
end
else
begin
edit2.text:='7';
edit1.text:='C'+formatdatetime('yymmddhhmm',now);
end;
end;
procedure TFormbackup.FormCreate(Sender: TObject);
begin
edit1.text:='C'+formatdatetime('yymmddhhmm',now);
end;
procedure TFormbackup.Edit1Exit(Sender: TObject);
begin
fileedit1.Text:=extractfilepath(application.exename)+'Backup\'+edit1.text+'.bak';
end;
procedure TFormbackup.Button3Click(Sender: TObject);
begin
if savedialog1.execute then
fileedit1.text:=savedialog1.filename;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -