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

📄 unit1.pas

📁 delphi实现oracle数据的导入导出
💻 PAS
字号:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Button2: TButton;
    Button3: TButton;
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}
{
  Cmdstr := 'exp80';
  BackMode := 'Tables=kgxx';
  Filestr := 'File=E:\1';
  Logstr := 'Log=E:\999.log';
  Usersre := 'eft91_dba';
  Passstr := '111';
  Alistr :='';
  cmdline:=pchar(Cmdstr+' '+Usersre+'/'+Passstr+'@'+Alistr+' '+BackMode+' '+Filestr+' '+Logstr);
  winexec(cmdline,SW_SHOWNORMAL);
}
procedure TForm1.Button2Click(Sender: TObject);
begin
  if fileexists('D:\data.dmp') then
    DeleteFile('D:\data.dmp');
  if fileexists('D:\日志.log') then
    DeleteFile('D:\日志.log');
  strExp:='eft91_dba/111 tables=ksxx,lscj,xlfp file=d:\data.dmp LOG=d:\日志.log';
  shellExecute(handle,'open','EXP80.exe',PChar(strExp),nil,sw_hide);
  if fileexists('D:\data.dmp') then
    showmessage('导出成功!')
  else
    showmessage('导出失败,请重新导出!');
end;

procedure TForm1.Button3Click(Sender: TObject);
var
  tmpName:string;
begin
  MyCmd.CommandText := 'select tname from tab where (tname=''KSXX'') or (tname=''XLFP'') or (tname=''LSCJ'')';
  MyTab.Recordset := MyCmd.Execute;
  if MyTab.FieldValues['tname'] <> null then
    MyTab.Recordset.MoveFirst ;//取第一条纪录
    while not MyTab.Eof do
      begin
        tmpName :=MyTab.fieldbyname('tname').AsString;
        MyCmd.CommandText := 'drop table '+tmpName;
        MyCmd.Execute;
        MyTab.Next;
      end;
  if not fileexists('D:\data.dmp') then
    begin
      showmessage('导入文件不存在!');
    end;
  strExp:='zx_dba/111 file=d:\data.dmp ignore=y full=y';
  shellExecute(handle,'open','imp80.exe',PChar(strExp),nil,sw_hide);
  MyCmd.CommandText :='select count(*) from tab where (tname=''KSXX'') or (tname=''XLFP'') or (tname=''LSCJ'')';
  MyTab.Recordset := MyCmd.Execute;
  if MyTab.FieldValues['count(*)'] = 3 then
    showmessage('导入成功!')
  else
    showmessage('导入失败,请重新导入!');
end;

end.

⌨️ 快捷键说明

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