About the author : Jurgen Kemmelings

No bio was found for this author yet...
More by Jurgen Kemmelings
New PL/SQL Feature in Oracle 11g: the use of sequence.nextval
Another small new feature in Oracle 11g PL/SQL: you can directly use sequence.nextval (and sequence.currval). It is not necessary anymore to do something like select sequence.nextval into l_seq from dual in your PL/SQL block. A small example:
declare l_seq number;begin l_seq := oe.orders_seq.nextval; dbms_output.put_line('Value of orders_seq.nextval = '||to_char(l_seq));end;
SQL>
Value of orders_seq.nextval = 1000
PL/SQL-procedure is geslaagd.



13/7/2007 - 5:41 pm
This is another small but good step in the right direction. I tried if it was possible to assign a sequence to the default expression of a column, but it appears this feature is really restricted to PL/SQL.
As I see it now, many features are small tweaks to pl/sql.
19/7/2007 - 7:12 pm
Hi,
i assume that ‘l_seq := oe.orders_seq.nextval;’ is translated/executed internally to ‘SELECT oe.orders_seq.nextval INTO l_seq FROM DUAL;’
did you trace it?
Karl
24/9/2007 - 10:30 pm
Hi,
Karl is right. Oracle internally translates the assignment into equivalent SQL statement. Read this for a test case.
Momen
25/9/2007 - 11:18 am
Hi,
Karl is right. Oracle internally converts the assignment into equivalent SQL statement. Click here, to have a look at the test.