从cobol平面文件加载到oracle表中,发生的时间

问题描述 投票:0回答:1

传入文件格式的大型机/ cobol记录布局,单个记录的长度超过21000个字符。请注意发生了350次,这使得记录长度非常长,采用水平布局,而不是传入文件中的行式布局。

id  pic x(23).
  idnum  pic 9(04).
  filler pic x(10).
  grp  occurs 350 times
    grpkey1   PIC X(25).
    grpkeynum PIC X(09).
    grpsubkey PIC X(01).
    grptyp    PIC X(01).
    grpst     PIC X(08).
    grpend    PIC X(08).
    filler    PIC X(10).

目标表定义(最好是Oracle外部表)

create table grpkeys (
id  CHAR(23),
idnum  CHAR(04),
filler10 CHAR(10),
grpkey1   CHAR(25),
grpkeynum CHAR(09),
grpsubkey CHAR(01),
grptyp    CHAR(01),
grpst     CHAR(08),
grpend    CHAR(08),
filler20    CHAR(10)
)

我必须将上述记录格式的文件加载到表中(如果可能,最好是工作的oracle外部表)。 id,idnum,filler10值需要复制到在oracle表(最好是外部表)中创建的所有350条记录中,以用于单个传入文件记录。请提出实现此目的的最简单方法。

oracle load cobol
1个回答
0
投票

Simon-这将是一个重复的日常加载过程。数据将从大型机传输到Unix。我的Unix开发服务器中有一个测试文件,需要加载。该文件具有许多行类型,此行类型仅占文件的一小部分。不确定Unix将如何执行。无论如何,您的建议很有价值。如果您可以共享sed / awk / shell纯脚本的一些代码,我将不胜感激。

© www.soinside.com 2019 - 2024. All rights reserved.