oracle数据导入--text importer使用说明

今天遇到这样一个需求,需要将一个txt的数据文件导入到oracle数据库的两个表中,按理说这个问题很好搞定。

但那时我却破费周折...

先说说如何使用 pl/sql developer 的text importer完成数据导入吧,

打开后你会看到一个这样的界面,(摘自网络):

 

1.使用PL/SQL Developer的Text Importer

(1)从菜单中选取Text Importer功能。

    Tool——>Text Importer(如图1所示)

(2)点击“Text Importer”后显示主窗口(如图2)

 

 oracle数据导入--text importer使用说明_第1张图片

(3)设置将数据文件导入到哪个数据库中的哪个表中,如图3所示。如果需要额外插入常量或者sequence,选好相应列以后,可在SQL function中设置相应的常量值或者sequence.nextval值。 

 oracle数据导入--text importer使用说明_第2张图片

(4)设置完成后,点击“Import”按钮,数据开始导入直到数据全部导入到数据库中。

 

我今天也是这样做的,只是忘记了在倒表的主键时,忘记了在sql function设置相应的sequence.nextval,待数据导入结束后才发现这个问题,又不想重新导入text数据,因为数据量很大,倒一次比较费时。于是就为该表建立一个trigger,然后在update该表数据时,更新该表主键。

trigger 脚本如下:

create or replace trigger XXX_T

  before insert or update on XXX

  for each row

declare

  -- local variables here

begin

  select XXX_SEQ.nextval into :new.XXX_ID from dual;

end XXX_T;

 

如果有兄弟跟我有同样的遭遇,可以看看我的解决方案吧。特此留笔,以标记我的疏忽导致的额外工作。

 

 


 

你可能感兴趣的:(oracle,sql,数据库,function,insert,variables)