oracle导入数据库:Oracle数据库导入导出工具



自己记忆力比较差,经常记不住命令,注意不是差,是太差了,另外也比较懒惰,所以想写个小东西,释放下劳动力.于是有了个想法,写个导入导出数据库小工具,免得每次敲命令麻烦,尤其是文件路径,在cmd下面修改很费劲.

在家没事做,时机来了,起初想用脚本语言来写,比如批处理vbs,vbs利用ie做GUI,后来发现单调vbs脚本可以,但是用批处理调vbs,ie就起不来了,而且效果也不是很好,干脆写个小算了(java就免了不够麻烦),庆幸我还懂点delphi 就会点皮毛,不过由于delphi比较简单,虽然我大学接触了 3年c(基本和没学样),但是我仍然觉得比不上我根本没学过delphi简单.这就是差距了,自己太菜了,只能使用些比较容易上手语言了.vb还是算了,机器上没有开发环境.前几天正好下了个精简版delphi,这年头,连开发工具都玩起了精简绿化,不得不寒啊...

估计来看我博客都是搞java,对源码不感兴趣,但是我还是准备贴出来,以防不时的需,利用ShellExecute可以启动java噢,有兴趣可以看看.没兴趣看源码,就试用下这个小工具吧,Delphi牛人来了就当路过好了...

这是我个完整delphi,处女作啊,具有纪念价值.

下载地址(我csdn资源):http://download.csdn.net/source/657522

unit Unit2;

erface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls,shellapi, CustomizeDlg;

type
  TForm1 = (TForm)
    execButton: TButton;
    userNameEdit: TEdit;
    userNameLabel: TLabel;
    impRadio: TRadioButton;
    expRadio: TRadioButton;
    databaseEdit: TEdit;
    databaseLabel: TLabel;
    fromUserLabel: TLabel;
    passwordLabel: TLabel;
    passwordEdit: TEdit;
    fromUserEdit: TEdit;
    toUserLabel: TLabel;
    toUserEdit: TEdit;
    OpenDialog1: TOpenDialog;
    extCmdLineEdit: TEdit;
    Button3: TButton;
    FileLabel: TLabel;
    extCmdLabel: TLabel;
    fileEdit: TEdit;
    cmdLineEdit: TEdit;
    blogLabel: TLabel;
    procedure execButtonClick(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure blogLabelMouseEnter(Sender: TObject);
    procedure blogLabelMouseLeave(Sender: TObject);
    procedure blogLabelClick(Sender: TObject);
    procedure databaseEditChange(Sender: TObject);
    procedure chgCmdLine;
    procedure FormCreate(Sender: TObject);
    procedure impRadioClick(Sender: TObject);
    procedure expRadioClick(Sender: TObject);
    procedure userNameEditChange(Sender: TObject);
    procedure passwordEditChange(Sender: TObject);
    procedure fromUserEditChange(Sender: TObject);
    procedure toUserEditChange(Sender: TObject);
    procedure extCmdLineEditChange(Sender: TObject);
    procedure fileEditChange(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  batFile:textfile; 
implementation

{$R *.dfm}

procedure TForm1.execButtonClick(Sender: TObject);
begin
      assignfile(batFile,'temp.bat');
      rewrite(batFile);
      writeln(batFile,'%~1'+#10+'pause');
      closefile(batFile);
      ShellExecute(Application.Handle, 'open', 'temp.bat', pchar('"'+cmdLineEdit.text+'"'), nil, SW_SHOW);
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
OpenDialog1.Filter:= '备份文件|*.dmp|所有文件|*.*';
OpenDialog1.Execute then
begin
fileEdit.text:=OpenDialog1.FileName;
end;
end;

procedure TForm1.blogLabelMouseEnter(Sender: TObject);
begin
  blogLabel.Font.style:=[fsUnderline];
end;

procedure TForm1.blogLabelMouseLeave(Sender: TObject);
begin
  blogLabel.Font.Style:=;
end;

procedure TForm1.blogLabelClick(Sender: TObject);
begin
ShellExecute(Handle, 'Open', 'http://blog.csdn.net/sunyujia/', '', '', SW_SHOWNORMAL);
end;

procedure TForm1.databaseEditChange(Sender: TObject);
begin
  chgCmdLine;
  extCmdLineEdit.Text:='log='+databaseEdit.Text+'.log';
  fileEdit.Text:=databaseEdit.Text+'.dmp';
end;
procedure TForm1.chgCmdLine;
begin
 cmdLineEdit.text:=userNameEdit.text+'/'+passwordEdit.text+'@'+databaseEdit.text;
  impRadio.Checked=true then
 begin
    cmdLineEdit.text:='imp '+cmdLineEdit.text+' fromuser='+fromuserEdit.text+' '+'touser='+touserEdit.text+' ';
 end
 begin
    cmdLineEdit.text:='exp '+cmdLineEdit.text+' owner='+fromuserEdit.text+' ';
 end;
  cmdLineEdit.text:=cmdLineEdit.text+' file="'+fileEdit.text+'" '+extCmdLineEdit.text;
end;

procedure TForm1.userNameEditChange(Sender: TObject);
begin
chgCmdLine;
fromuserEdit.text:=usernameEdit.text;
touserEdit.text:=usernameEdit.text;
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
DeleteFile('temp.bat');
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
chgCmdLine;
end;

procedure TForm1.impRadioClick(Sender: TObject);
begin
chgCmdLine;
end;

procedure TForm1.expRadioClick(Sender: TObject);
begin
chgCmdLine;
end;

procedure TForm1.passwordEditChange(Sender: TObject);
begin
chgCmdLine;
end;

procedure TForm1.fromUserEditChange(Sender: TObject);
begin
chgCmdLine;
end;

procedure TForm1.toUserEditChange(Sender: TObject);
begin
chgCmdLine;
end;

procedure TForm1.extCmdLineEditChange(Sender: TObject);
begin
chgCmdLine;
end;

procedure TForm1.fileEditChange(Sender: TObject);
begin
chgCmdLine;
end;
end.

原文网址:http://blog.csdn.net/sunyujia/archive/2008/09/29/2996688.aspx

Tags:  数据库导出导入 oracle导入导出 oracle数据库导出 oracle导入数据库

延伸阅读

最新评论

发表评论