我备份的思路是把整个数据库文件复制到指定目录下. 可是现在老师要求针对不同的用户要求备份个别数据表. 并生成日志, 根据日志上的日期来管理备份.
现把我的原码贴在下面,请高手帮我看看.
如果有相关示例请给个到我邮箱.([email protected]) 十分感谢......
type
TSJBF = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
Memo1: TMemo;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SaveDialog1: TSaveDialog;
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
SJBF: TSJBF;implementationuses UDM;{$R *.dfm}procedure TSJBF.SpeedButton2Click(Sender: TObject);
begin
Close;
end;
procedure TSJBF.SpeedButton1Click(Sender: TObject);
var
F: TShFileOpStruct;
begin
SaveDialog1.Filter := 'ACCESS 文件(*.mdb)|*.mdb';
SaveDialog1.Title := '选择备份路径和文件名';
SaveDialog1.InitialDir := ExtractFileDir(Application.ExeName) + '\data\backup';
F.wnd := Handle;
F.wFunc := Fo_COPY; //操作方式/
F.pFrom := pAnsichar(ExtractFileDir(Application.ExeName) + '\Data\QCZL.mdb' + #0);
if SaveDialog1.Execute then
begin
F.pTo := pAnsichar(SaveDialog1.FileName + '.mdb');
F.fFlags := FOF_ALLOWUNDO or FOF_RENAMEONCOLLISION;//操作选项
if ShFileOperation(F) <> 0 then
MessageBox(0, '数据文件备份失败!', '错误', MB_OK + MB_ICONSTOP)
else
MessageBox(0, '数据文件备份成功!', '成功', MB_OK + MB_ICONINFORMATION);
end;
end;
end.
现把我的原码贴在下面,请高手帮我看看.
如果有相关示例请给个到我邮箱.([email protected]) 十分感谢......
type
TSJBF = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
Memo1: TMemo;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SaveDialog1: TSaveDialog;
procedure SpeedButton2Click(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
SJBF: TSJBF;implementationuses UDM;{$R *.dfm}procedure TSJBF.SpeedButton2Click(Sender: TObject);
begin
Close;
end;
procedure TSJBF.SpeedButton1Click(Sender: TObject);
var
F: TShFileOpStruct;
begin
SaveDialog1.Filter := 'ACCESS 文件(*.mdb)|*.mdb';
SaveDialog1.Title := '选择备份路径和文件名';
SaveDialog1.InitialDir := ExtractFileDir(Application.ExeName) + '\data\backup';
F.wnd := Handle;
F.wFunc := Fo_COPY; //操作方式/
F.pFrom := pAnsichar(ExtractFileDir(Application.ExeName) + '\Data\QCZL.mdb' + #0);
if SaveDialog1.Execute then
begin
F.pTo := pAnsichar(SaveDialog1.FileName + '.mdb');
F.fFlags := FOF_ALLOWUNDO or FOF_RENAMEONCOLLISION;//操作选项
if ShFileOperation(F) <> 0 then
MessageBox(0, '数据文件备份失败!', '错误', MB_OK + MB_ICONSTOP)
else
MessageBox(0, '数据文件备份成功!', '成功', MB_OK + MB_ICONINFORMATION);
end;
end;
end.
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货