?? backup.pas
字號:
unit BackUp;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DBXpress, FMTBcd, DB, SqlExpr, StdCtrls, ComCtrls;
const
ver='VER 1.02';
type
TMainForm = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
Button1: TButton;
Edit1: TEdit;
Label1: TLabel;
Button2: TButton;
Label2: TLabel;
Edit2: TEdit;
Button4: TButton;
SQLConnection1: TSQLConnection;
SQLQu_BackUp: TSQLQuery;
SaveDialog1: TSaveDialog;
OpenDialog1: TOpenDialog;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Button3: TButton;
Button5: TButton;
Label6: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
MainForm: TMainForm;
implementation
uses HiteDlg;
{$R *.dfm}
//設置數據庫的連接屬性
procedure TMainForm.FormCreate(Sender: TObject);
var
IPaddress:string;
begin
try
//IPaddress:=inttostr(GetRegistryIntValue('software\kaer\yxwg','IPaddress1'));
// IPaddress:=IPaddress+'.'+inttostr(GetRegistryIntValue('software\kaer\yxwg','IPaddress2'));
//IPaddress:=IPaddress+'.'+inttostr(GetRegistryIntValue('software\kaer\yxwg','IPaddress3'));
//IPaddress:=IPaddress+'.'+inttostr(GetRegistryIntValue('software\kaer\yxwg','IPaddress4'));
IPaddress:='127.0.0.14';
SQLConnection1.Connected:=false;
SQLConnection1.Params.Strings[1]:='HostName='+IPaddress;
SQLConnection1.Params.Strings[2]:='DataBase=longtan';
SQLConnection1.Params.Strings[3]:='User_Name=sa';
SQLConnection1.Params.Strings[4]:='Password=';
SQLConnection1.Open;
except
showmessage('數據庫連接錯誤,請檢查數據庫是否存在及IP設置是否正確。');
Application.Terminate;
end;
end;
//備份數據庫
procedure TMainForm.Button1Click(Sender: TObject);
begin
if Edit1.Text='' then
begin
showmessage('未選擇目標文件名。');
exit
end;
try
HiteForm.LblHite.Caption:='正在備份數據庫,請稍侯...';
HiteForm.Show;
HiteForm.Update;
SQLQu_BackUp.SQL.Text:='BACKUP DATABASE [northwind] TO DISK = '''
+Edit1.Text+''' WITH INIT';
SQLQu_BackUp.ExecSQL(true);
HiteForm.Hide;
showmessage('數據庫備份完畢。');
except
showmessage('數據庫備份失敗,請重新備份。');
end;
end;
//恢復數據庫
procedure TMainForm.Button4Click(Sender: TObject);
begin
if Edit2.Text='' then
begin
showmessage('未選擇源文件名。');
exit
end;
try
try
HiteForm.LblHite.Caption:='正在還原數據庫,請稍侯...';
HiteForm.Show;
HiteForm.Update;
SQLQu_BackUp.SQL.Text:='use master';
SQLQu_BackUp.ExecSQL(true);
SQLQu_BackUp.SQL.Text:='RESTORE DATABASE northwind from DISK ='''+Edit2.Text+''''
+' WITH FILE = 1, NOUNLOAD , STATS = 10, RECOVERY,replace';
SQLQu_BackUp.ExecSQL(true);
finally
HiteForm.Hide;
end;
showmessage('數據庫恢復完畢。');
except
showmessage('數據庫恢復失敗,請檢查所選恢復文件是否正確。'+#13+'關閉其它應用程序,必要時重新啟動計算機,然后重新恢復。');
end;
end;
procedure TMainForm.Button5Click(Sender: TObject);
begin
close;
end;
procedure TMainForm.Button2Click(Sender: TObject);
begin
if SaveDialog1.Execute then
Edit1.Text:=SaveDialog1.FileName;
end;
procedure TMainForm.Button3Click(Sender: TObject);
begin
if OpenDialog1.Execute then
Edit2.Text:=OpenDialog1.FileName;
end;
end.
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -