unit UStore;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, IBServices;
type
TFRestore = class(TForm)
IBBackupService1: TIBBackupService;
IBRestoreService1: TIBRestoreService;
Button1: TButton;
Memo1: TMemo;
Button2: TButton;
Memo2: TMemo;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FRestore: TFRestore;
implementation
{$R *.dfm}
procedure TFRestore.Button1Click(Sender: TObject);
begin
//数据库备份
with IBBackupService1 do
begin
ServerName := 'employee';
LoginPrompt := False;
Params.Add('user_name=sysdba');
Params.Add('password=masterkey');
Active := True;
try
Verbose := True;
Options := [NonTransportable, IgnoreLimbo];
//指定数据库源文件 ,设置为特定的数据库文件
DatabaseName := 'G:/malin/employee.gdb';
//指定备份文件
BackupFile.Add('C:/temp/employee1.gbk');
//启动服务
ServiceStart;
While not Eof do
//在Memo组件中显示备份信息
Memo1.Lines.Add(GetNextLine);
finally
Active := False;
end;
end;
end;
procedure TFRestore.Button2Click(Sender: TObject);
begin
//从备份文件中恢复数据库
with IBRestoreService1 do
begin
ServerName := 'Poulet';
LoginPrompt := False;
Params.Add('user_name=sysdba');
Params.Add('password=masterkey');
Active := True;
try
Verbose := True;
Options := [Replace, UseAllSpace];
PageBuffers := 3000;
PageSize := 4096;
//要恢复的数据库
DatabaseName.Add('G:/malin/employee1.gdb');
//指定备份文件
BackupFile.Add('C:/temp/employee1.gbk');
ServiceStart;
While not Eof do
//在Memo组件中显示恢复信息
Memo2.Lines.Add(GetNextLine);
finally
Active := False;
end;
end;
end;
end.
数据库备份与恢复
最新推荐文章于 2025-04-30 11:36:40 发布
1623

被折叠的 条评论
为什么被折叠?



