Re: sequence.nextval out a trigger

From: 170 Systems <170sys_at_netcom.com>
Date: Fri, 7 Oct 1994 18:24:18 GMT
Message-ID: <170sysCxBF4I.JB7_at_netcom.com>


Franz Achermann (acherman_at_asterixiam.unibe.ch) wrote:
: Hi,
 

: I'd like to have a before insert for each row trigger,
: which inserts automatically keys. But what am I doing wrong
: in the following example:
 

: CREATE TRIGGER insert_personal
: BEFORE INSERT ON Personal
: FOR EACH ROW
: DECLARE v number(6);
: BEGIN
: :new.Per_Nr := key_generator.nextval;
: END;
: /

I don't think sequences can be used in a PL/SQL assignment as you are doing. Instead of:

    :new.Per_Nr := key_generator.nextval;

try:

    Select key_generator.nextval

      Into v
      From Dual;

    :new.Per_Nr := v;

Of course you could also use "key_generator.nextval" as part of the original insert statement.

  • Dan
Received on Fri Oct 07 1994 - 19:24:18 CET

Original text of this message