0

我很难存储要加载到两个单独列中的表达式。

我们有两个值——RECORD_ID 和 ITEM_NUMBER,它们都需要每行唯一的值。

我的第一印象是以某种方式将序列的值加载到 boundfiller 或类似的东西中,然后在记录 id 和编号中使用它,但我很难理解我将如何去做。

下面是我正在使用的当前控制文件的片段:

...
FIELDS TERMINATED BY '|'
TRAILING NULLCOLS
(

FIELD1   BOUNDFILLER POSITION(1), -- 
...
FIELD79 BOUNDFILLER,

COLUMN_NAME EXPRESSION ":FIELD1",
ITEM_NUMBER EXPRESSION "???",
...
RECORD_ID "RECORD_ID_SEQ.NEXTVAL"
)

我希望我能做类似的事情

TEMPVALUE BOUNDFILLER "RECORD_ID_SEQ.NEXTVAL"

但在性质上没有发现任何类似的东西。

4

1 回答 1

0

我相信类似的东西属于表上的 BEFORE INSERT 触发器。

CREATE OR REPLACE TRIGGER tablename_BI
BEFORE INSERT ON tablename
FOR EACH ROW

BEGIN
  :new.record_id := RECORD_ID_SEQ.NEXTVAL;
END;
于 2015-04-29T19:06:40.993 回答