⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unit1.~pas

📁 数据库备份。sql+delphi批量备份
💻 ~PAS
字号:
//******************************************
//   zhenggc
//   2006-2-1  
//******************************************
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Buttons, DB, Grids, DBGrids, ADODB, Menus;

type
  TForm1 = class(TForm)
    ADOConnection1: TADOConnection;
    ADOQuery1: TADOQuery;
    DBGrid1: TDBGrid;
    DataSource1: TDataSource;
    BitBtn1: TBitBtn;
    ADOQuery2: TADOQuery;
    Memo1: TMemo;
    mnuconnect: TMainMenu;
    N1: TMenuItem;
    N2: TMenuItem;
    N3: TMenuItem;
    BitBtn2: TBitBtn;
    Button1: TButton;
    procedure BitBtn1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure N2Click(Sender: TObject);
    procedure N3Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.BitBtn1Click(Sender: TObject);
begin
 try
    with ADOQuery2 do
    begin
      Close;
      SQL.Clear;
       if  dbgrid1.SelectedField.Text<>'tempdb'      then

     begin
      SQL.Add('backup database '+ dbgrid1.SelectedField.Text   + ' to disk = '+ ''''+ dbgrid1.SelectedField.Text+datetostr(date)+'.bak''');
      ExecSQL;
       ShowMessage('备份完成。文件名:'+dbgrid1.SelectedField.Text+datetostr(date)+'.bak');
      end;

    end;
   if dbgrid1.SelectedField.Text='tempdb'    then ShowMessage('不能备份本库!');
  except
    On e: exception do
    ShowMessage('备份失败。');
  end;

end;

procedure TForm1.FormCreate(Sender: TObject);
begin
adoquery1.Active :=true;
end;

procedure TForm1.N2Click(Sender: TObject);
begin
//这里添加连接程序过程
    application.Create(form1)


end;

procedure TForm1.N3Click(Sender: TObject);
begin
    //这里添加退出程序过程
     application.Terminate ;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  i:integer;
  col:integer;
  row:integer;
  query:Tdataset;
begin
       try
                 query:=dbgrid1.DataSource.DataSet    ;
                 row:=1               ;
                 with query do
                  begin
                   first;
                   while not eof do
                   begin
    with ADOQuery2 do
    begin
      Close;
      SQL.Clear;
      col:=1;
     if    DBGrid1.Fields[0].Value='tempdb'      then      query.next  ;

     SQL.Add('backup database '+ DBGrid1.Fields[0].Value   + ' to disk = '+ ''''+ DBGrid1.Fields[0].Value+datetostr(date)+'.bak''');
      ExecSQL;
      ShowMessage('备份完成。文件名:'+DBGrid1.Fields[0].Value+datetostr(date)+'.bak');
      col:=col+1;
      end ;
      next;
      row:=      row+1;
   end;
 end;
  except
    On e: exception do
    ShowMessage('备份失败。');

  end;
end;

procedure TForm1.BitBtn2Click(Sender: TObject);
begin
         application.Terminate ;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -