【delphi开源代码栏目提醒】:网学会员为需要delphi开源代码的朋友们搜集整理了Backup_tool_u.pas相关资料,希望对各位网友有所帮助!
unit Backup_tool_u;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Buttons, DB, ADODB, IniFiles;
type
TBackup_tool = class(TForm)
Label1: TLabel;
GroupBox1: TGroupBox;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
BitBtn3: TBitBtn;
ADOConnection1: TADOConnection;
ADOQuery1: TADOQuery;
GroupBox3: TGroupBox;
Label7: TLabel;
Label8: TLabel;
Edit6: TEdit;
Edit7: TEdit;
OpenDialog1: TOpenDialog;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
RadioButton3: TRadioButton;
RadioButton4: TRadioButton;
procedure BitBtn1Click(Sender: TObject);
procedure BitBtn3Click(Sender: TObject);
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
procedure BitBtn2Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure SpeedButton2Click(Sender: TObject);
private
File_name: TIniFile;
AppPath: String;
{ Private declarations }
public
{ Public declarations }
end;
var
Backup_tool: TBackup_tool;
implementation
{$R *.dfm}
procedure TBackup_tool.BitBtn1Click(Sender: TObject);
begin
try
ADOConnection1.Close;
ADOConnection1.ConnectionString:='Provider=SQLOLEDB.1;'+
'Password='+Edit4.Text+';'+
'Persist Security Info=True;'+
'User ID='+Edit3.Text+';'+
'Initial Catalog='+Edit2.Text+';'+
'Data Source='+Edit1.Text+';';
ADOConnection1.Open;
ADOConnection1.Close;
ShowMessage('测试连接成功!!');
except
ShowMessage('测试连接失败!!');
end;
end;
procedure TBackup_tool.BitBtn3Click(Sender: TObject);
begin
Close;
end;
procedure TBackup_tool.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
if key=#13 then PerForm(WM_NextDlgctl,0,0);
end;
procedure TBackup_tool.BitBtn2Click(Sender: TObject);
var
commond: String;
begin
if RadioButton3.Checked then Commond:=RadioButton3.Caption;
if RadioButton4.Checked then Commond:=RadioButton4.Caption;
if MessageDlg('您确认要执行['+Commond+']操作吗?',mtInformation,[mbYes,mbNo],0)=mrYes then
begin
Try
with ADOConnection1 do
begin
Close;
ConnectionString:='Provider=SQLOLEDB.1;'+
'Password='+Edit4.Text+';'+
'User ID='+Edit3.Text+';'+
'Persist Security Info=True;'+
'Data Source='+Edit1.Text+';';
if RadioButton3.Checked then
ConnectionString:=ConnectionString+'Initial Catalog=master;'
else
ConnectionString:=ConnectionString+'Initial Catalog='+Edit2.Text+';';
Open;
end;
with ADOQuery1 do
begin
Close;
SQL.Clear;
if RadioButton3.Checked then
begin
SQL.LoadFromFile(AppPath+'\sp_attach_db.SQL'); //附加数据库脚本
Parameters.ParamByName('DB_name').size := 50;
Parameters.ParamByName('DB_name').Value:=Edit2.Text; //数据库名称
Parameters.ParamByName('DBF_name').Size := 100;
Parameters.ParamByName('DBF_name').Value:=Edit6.Text; //数据文件名
Parameters.ParamByName('RZF_name').Size := 100;
Parameters.ParamByName('RZF_name').Value:=Edit7.Text; //日志文件名
end
else
if RadioButton4.Checked then
begin
SQL.LoadFromFile(AppPath+'\sp_detach_db.SQL'); //附加数据库脚本
Parameters.ParamByName('DB_name').Size := 50;
Parameters.ParamByName('DB_name').Value:=Edit2.Text; //数据库名称
end;
ExecSQL;
ShowMessage('['+Commond+']操作成功!!');
end;
Except
ShowMessage('['+Commond+']操作失败!!');
end;
end;
end;
procedure TBackup_tool.FormShow(Sender: TObject);
begin
GetDir(0,AppPath);
File_name:=TIniFile.Create(AppPath+'\System.ini');
Try
//--------数据库信息--------------------------------------------------------
Edit1.Text:=File_name.ReadString('DataBase','DBServer',Edit1.Text);
Edit2.Text:=File_name.ReadString('DataBase','DBName',Edit2.Text);
Edit3.Text:=File_name.ReadString('DataBase','DBLogon',Edit3.Text);
Edit4.Text:=File_name.ReadString('DataBase','DBPass',Edit4.Text);
Finally
File_name.Free;
File_name:=nil;
end;
end;
procedure TBackup_tool.SpeedButton1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
Edit6.Text:=OpenDialog1.FileName;
end;
procedure TBackup_tool.SpeedButton2Click(Sender: TObject);
begin
if OpenDiaLog1.Execute then
Edit7.Text:=OpenDialog1.FileName;
end;
end.
上一篇:
Form1.frm
下一篇:
应用数学学报编辑部联系方式