亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? backup_restore.pas

?? 清華大學出版社出版的數據庫系統教程附帶的實驗教程中所有的源代碼
?? PAS
字號:
unit backup_restore;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ImgList, ComCtrls, FileCtrl, StdCtrls, Buttons, DB, ADODB,QFileCtrls,ShellAPi;

type
  TForm1 = class(TForm)
    Lab_Panel1: TLabel;
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    RadioButton1: TRadioButton;
    RadioButton2: TRadioButton;
    BitBtn1: TBitBtn;
    GroupBox2: TGroupBox;
    ListView1: TListView;
    DriveComboBox1: TDriveComboBox;
    DirectoryListBox1: TDirectoryListBox;
    FileListBox1: TFileListBox;
    StatusBar1: TStatusBar;
    ImageList1: TImageList;
    ADOConnection1: TADOConnection;
    procedure BitBtn1Click(Sender: TObject);
    procedure ListView1Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure StatusBar1DrawPanel(StatusBar: TStatusBar;
      Panel: TStatusPanel; const Rect: TRect);
    procedure DriveComboBox1Change(Sender: TObject);
    procedure FormShow(Sender: TObject);
  private
    { Private declarations }
    Files:String;
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
   backupflag:string;

implementation

{$R *.dfm}

procedure TForm1.BitBtn1Click(Sender: TObject);
var
conn:TADOConnection;
HF:TADOCommand;
BF:TADOQuery;
List:TListItem;
a:integer;
sPath,sFileName:String;
begin
  if (RadioButton1.Checked=true)and (RadioButton2.Checked=false)  then         //備份數據
    begin   //1
      if MessageDlg('您確認要備份數據嗎?',mtCustom,[mbYes,mbNo],0)=mrYes then
        begin   //2
          if (ListView1.Items.Count<>0 )then          //存在記錄
            begin //3
              For a:=0 to ListView1.Items.Count-1 do
                begin  //4
                  DeleteFile('children.bak');
                end;   //4  結束for循環
                try
                ListView1.Items.Clear;
                BF:=TADOQuery.Create(Self);
                BF.Connection:=adoconnection1;
                BF.Close;
                BF.SQL.Clear;
                BF.SQL.Text:='Backup DataBase children to disk=:A';
                if Copy(DirectoryListBox1.Directory,Length(DirectoryListBox1.Directory),1)='\' then
                begin
                BF.Parameters.ParamByName('A').Value:=DirectoryListBox1.Directory+Label2.Caption ;
                end
                else
                begin
                BF.Parameters.ParamByName('A').Value:=DirectoryListBox1.Directory+'\'+Label2.Caption;
                end;
                BF.ExecSQL;
                BF.Close;
                BF.Free;
                adoconnection1.Connected:=false;
                List:=ListView1.Items.Add;
                List.ImageIndex:=0;
                List.Caption:=Label2.Caption;
                Lab_panel1.Caption:='備份完畢,舊備份已覆蓋';
                Lab_panel1.Font.Color:=clWindowText;
                except
                MessageDlg('數據庫備份失敗,請確認程序是否連接到本機數據庫且用系統管理員身份登陸本系統。',mtInformation ,[mbOK],0);
                exit;
                end;
            end //3
          else            //該目錄下沒有備份記錄
            begin
             // ADOConnection1.Connected:=false;
              try
              BF:=TADOQuery.Create(Self);
              BF.Connection:=adoconnection1;
              BF.Close;
              BF.SQL.Clear;
              BF.SQL.Text:='Backup DataBase children to disk=:A';
              if Copy(DirectoryListBox1.Directory,Length(DirectoryListBox1.Directory),1)='\' then
              BF.Parameters.ParamByName('A').Value:=DirectoryListBox1.Directory+Label2.Caption
              else
              BF.Parameters.ParamByName('A').Value:=DirectoryListBox1.Directory+'\'+Label2.Caption;
              BF.ExecSQL;
              BF.Close;
              BF.Free;
              List:=ListView1.Items.Add;
              List.ImageIndex:=0;
              List.Caption:=Label2.Caption;
              Lab_panel1.Caption:='備份完畢';
              Lab_panel1.Font.Color:=clWindowText;
              except
              MessageDlg('數據庫備份失敗,請確認程序是否連接到本機數據庫且用系統管理員身份登陸本系統。',mtInformation ,[mbOK],0);
              exit;
              end;
            end;
        end;   //2
    end;   //1


   if (RadioButton2.Checked=True) and (RadioButton1.Checked=false) then   //選擇恢復數據
     begin
       if MessageDlg('您確認要恢復數據嗎?',mtCustom,[mbYes,mbNo],0)=mrYes then
         begin
           if ListView1.Items.Count=0 then //如果為空沒有記錄卡
             begin
               Lab_panel1.Caption:='對不起沒有發現備份卡,無法恢復數據';
               Lab_panel1.Font.Color:=clred;
               Exit;
             End
           else    //如果存在記錄卡
             begin
               if Files='' then   //沒有選擇恢復文件
                 begin
                   Lab_panel1.Caption:='對不起,請重新選擇要恢復的備份';
                   Lab_panel1.Font.Color:=clred;
                   Exit;
                 End
               Else
                 begin    //開始恢復
                   backupflag:='1';
                   try
                   conn:= TADOConnection.Create(nil);
                   conn.LoginPrompt:= false;
                   conn.Connected:= false;
                   conn.ConnectionString:='Provider=SQLOLEDB.1;Password=1234;Persist Security Info=True;User ID=sa;Initial Catalog=master;Data Source=(local)\children';

                    adoconnection1.Free;             //關掉原先已經打開的數據庫連接

                   conn.Connected:= true;
                   HF:= TADOCommand.Create(nil);
                   HF.Connection:= conn;
                   HF.CommandTimeout := 3000;
                   sleep(100);
                   if Copy(DirectoryListBox1.Directory,Length(DirectoryListBox1.Directory),1)='\' then
                   sPath:=DirectoryListBox1.Directory+Files
                   Else
                   sPath:=DirectoryListBox1.Directory+'\'+Files;
                   HF.CommandText:= 'Restore DataBase children from disk='''+ sPath + '''';
                   HF.Execute;
                   HF.Free;
                   MessageDlg('數據庫恢復完成,現在將重新啟動本系統。',mtInformation ,[mbOK],0);
                   self.close;
                   except
                  MessageDlg('數據庫恢復失敗,請確認沒有其它程序已經連接到數據庫。現在將重新啟動本系統。',mtInformation ,[mbOK],0);

                  end;
                  sPath:=ExtractFilePath(application.ExeName);
                  sFileName:=ExtractFileName(Application.ExeName);
                  sPath:=spath+sFileName;
                  ShellExecute(handle,nil,PChar(sPath),nil,nil,SW_SHOW);
                //  frmmain.Close;
               end;
             end;
          end;
       end;

   if (RadioButton2.Checked=false) and (RadioButton1.Checked=false) then
     begin
       Lab_panel1.Caption:='選擇錯誤,選項備份和恢復不能同時為空';
       Lab_panel1.Font.Color:=clred;
       exit;
     end;

end;

procedure TForm1.ListView1Click(Sender: TObject);

   var Lists:TListItem;
begin
 Lists:=ListView1.Selected;
 if Lists<>nil then  //選擇了備份卡
 begin
   Files:=Lists.Caption;
 End
 else Files:='';
 Lab_Panel1.Caption:='選擇要恢復的備份';
 Lab_Panel1.Font.Color:=clWindowText;
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
    form1.Release;
   form1:=nil;
end;

procedure TForm1.StatusBar1DrawPanel(StatusBar: TStatusBar;
  Panel: TStatusPanel; const Rect: TRect);
begin
 Lab_Panel1.Parent:=StatusBar1;
  Lab_Panel1.Left:= Rect.Left+2;
  Lab_Panel1.Height:=14;
  Lab_Panel1.Top:= Rect.Top+2;;
end;

procedure TForm1.DriveComboBox1Change(Sender: TObject);
var
List_View:array[0..1]of TListItem;
a:integer;
begin
  ListView1.Items.Clear;              //  清空備份卡列表
  if FileListBox1.Items.Count<>0 then
    begin                                 //添加當前路徑的備份
      For a:=0 to FileListBox1.Items.Count-1 do
       begin
         List_View[0]:=ListView1.Items.Add;
         List_View[0].Caption:=FileListBox1.Items.Strings[a];
         List_View[0].ImageIndex:=0;
      end;
    end;
  Lab_panel1.Caption:='位置選擇';
  Lab_panel1.Font.Color:=clWindowText;

end;

procedure TForm1.FormShow(Sender: TObject);
var
List_View:array[0..1]of TListItem;
a:integer;
s:string;
begin
   label2.Caption:='children.bak';      //顯示當天的備份信息
   GetDir(3,s);
   //ADOConnection1.Connected:=false;                 //在進行數據庫備份時要求中斷對數據庫的連接和操作
   ListView1.Items.Clear;
   if FileListBox1.Items.Count<>0 then
     begin                                   //顯示當前路徑下的備份
       for a:=0 to FileListBox1.Items.Count-1 do
         begin
           List_View[0]:=ListView1.Items.Add;
           List_View[0].Caption:=FileListBox1.Items.Strings[a];
           List_View[0].ImageIndex:=0;
         end;
     end;

end;

end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
香蕉加勒比综合久久| 色噜噜偷拍精品综合在线| 日韩三级av在线播放| 国产精品1024| 久久成人免费日本黄色| 国产视频一区二区在线| av电影在线观看一区| 中文字幕亚洲综合久久菠萝蜜| 日本精品一区二区三区高清| 日韩欧美国产成人一区二区| 另类小说图片综合网| 久久国产尿小便嘘嘘| 亚洲色图欧洲色图| 久久久久久影视| 麻豆一区二区三| 亚洲午夜激情av| 亚洲综合色自拍一区| 国产精品美女久久久久久| 色婷婷综合在线| 成人看片黄a免费看在线| 成人国产精品免费| 精品亚洲成av人在线观看| 精品国产一区二区三区久久久蜜月| 95精品视频在线| 国产精品 欧美精品| 91最新地址在线播放| 日本伦理一区二区| 精品三级av在线| 亚洲精品国产a| 亚洲黄色av一区| 国产一区二区女| 91蜜桃网址入口| 91小视频免费看| 日韩一区二区三区精品视频| 日韩久久久精品| 欧美国产日韩在线观看| 成人国产精品免费| 色综合久久久网| 久久综合九色综合欧美98| 国产女人水真多18毛片18精品视频| 国产蜜臀av在线一区二区三区| 亚洲精品你懂的| 国产精品99久| 欧美一区二区三区四区高清| 国产午夜精品福利| 99re热视频这里只精品| 国产清纯白嫩初高生在线观看91 | 91婷婷韩国欧美一区二区| 国产成人精品亚洲777人妖| 白白色亚洲国产精品| 欧美精品视频www在线观看| 中文在线一区二区| 国内欧美视频一区二区| 成人免费视频caoporn| 亚洲一区二区三区四区在线免费观看| 国产在线精品国自产拍免费| 欧美无人高清视频在线观看| 日韩精品一区在线观看| 国产精品系列在线播放| 成人免费视频视频在线观看免费 | 自拍偷拍欧美激情| 亚洲欧美另类久久久精品2019| 丁香五精品蜜臀久久久久99网站| 欧美二区在线观看| 婷婷一区二区三区| 97久久久精品综合88久久| 国产欧美日韩精品一区| 亚洲高清视频的网址| 欧美日韩一级二级三级| 日韩欧美国产三级电影视频| 成人aaaa免费全部观看| 精品福利在线导航| 欧美综合亚洲图片综合区| 爽爽淫人综合网网站| 日韩欧美第一区| 久久国产欧美日韩精品| 亚瑟在线精品视频| 亚洲乱码国产乱码精品精小说| 91麻豆精品视频| 青草国产精品久久久久久| 国产精品短视频| 91精品午夜视频| 激情国产一区二区| 国产一区高清在线| 国产精品久久久久国产精品日日| 精品福利一区二区三区| 欧美视频日韩视频在线观看| 久久99国内精品| 国产一区二区精品在线观看| 欧美国产精品专区| 成人深夜视频在线观看| 无吗不卡中文字幕| 国产精品欧美精品| 亚洲精品在线电影| 日韩一区二区三免费高清| 欧美日韩高清一区二区| 在线观看国产91| 欧美日韩国产高清一区二区三区| 国产夫妻精品视频| www.亚洲国产| 91麻豆国产在线观看| 国产精品99久久久久久久vr| 亚洲色图欧美激情| 欧美经典一区二区| 久久综合资源网| 成人欧美一区二区三区| 日本一区二区成人| 亚洲午夜精品在线| 亚洲欧美一区二区三区极速播放 | 国产精品久久看| 久久色成人在线| 国产精品国产三级国产a| 中文字幕免费不卡| 中文字幕在线播放不卡一区| 中文字幕亚洲电影| 风流少妇一区二区| 色综合婷婷久久| 亚洲精品一线二线三线无人区| 亚洲人吸女人奶水| 日韩中文字幕区一区有砖一区 | 一区二区三区在线观看国产| 蜜桃视频第一区免费观看| 亚洲精品国产高清久久伦理二区| 日本午夜精品一区二区三区电影| 99re这里都是精品| 欧美一区二区三区四区在线观看| 欧美日韩精品久久久| 日本一二三不卡| 免费成人美女在线观看| www.99精品| 国产精品卡一卡二| 色悠久久久久综合欧美99| 亚洲欧洲精品一区二区三区 | 久久久噜噜噜久噜久久综合| 欧美经典一区二区三区| 国产suv精品一区二区883| 欧美伊人久久久久久久久影院| 中文字幕免费不卡| 久久成人免费日本黄色| 成人avav在线| 精品国产91九色蝌蚪| 综合久久给合久久狠狠狠97色 | 蜜臀av性久久久久蜜臀av麻豆| 国产福利一区二区三区在线视频| 中文字幕五月欧美| 91影院在线免费观看| 午夜欧美大尺度福利影院在线看| 欧美日韩性生活| 日本不卡的三区四区五区| 一本大道av伊人久久综合| 日韩午夜精品电影| 成人午夜电影小说| 久久老女人爱爱| 风流少妇一区二区| 亚洲va欧美va人人爽| 国产亚洲欧美色| 一本色道久久综合狠狠躁的推荐| 亚洲大型综合色站| 91蜜桃网址入口| 国产电影一区二区三区| 日韩欧美一级精品久久| 久久66热re国产| 久久久蜜桃精品| 在线观看成人小视频| 成人aa视频在线观看| 一二三四区精品视频| 久久久精品2019中文字幕之3| 欧美午夜精品久久久久久超碰| 日韩av高清在线观看| 国产欧美日韩久久| 69精品人人人人| 99在线精品免费| 日韩黄色一级片| 午夜精品影院在线观看| 国产精品素人一区二区| 91精品国产乱码久久蜜臀| 欧美影院午夜播放| 成人av午夜电影| 国产aⅴ综合色| 不卡视频在线看| 麻豆国产精品777777在线| aaa欧美大片| 激情欧美日韩一区二区| 日韩精品免费专区| 亚洲免费电影在线| 亚洲视频一区二区在线| 国产欧美视频在线观看| 中文字幕不卡的av| 亚洲美女屁股眼交3| 26uuu国产在线精品一区二区| 欧美日韩国产另类一区| 99视频在线精品| 欧美精品日韩综合在线| 欧美一级片免费看| 日韩欧美电影一二三| 国产精品热久久久久夜色精品三区| 久久精品视频一区二区| 亚洲视频每日更新| 色国产精品一区在线观看| 91高清在线观看|