Improved sequence management

  • Follow


What does this mean?

How would I use a sequence value?

A new features of Oracle 11g will bypass DML (sequence.nextval) and allow 
normal assignments on sequence values.






0
Reply paddy_nyr 11/9/2010 7:41:14 PM

On Nov 9, 2:41=A0pm, "paddy_nyr" <philpott.patr...@gmail.com> wrote:
> What does this mean?
>
> How would I use a sequence value?
>
> A new features of Oracle 11g will bypass DML (sequence.nextval) and allow
> normal assignments on sequence values.

Old way:

declare
         p_seqval number;
begin
        select myseq.nextval into p_seqval from dual;
end;
/

New way:

declare
        p_seqval number;
begin
        p_seqval :=3D myseq.nextval;
end;
/


David Fitzjarrell
0
Reply ddf 11/9/2010 8:22:21 PM


On Tue, 09 Nov 2010 14:41:14 -0500, paddy_nyr wrote:

> What does this mean?
> 
> How would I use a sequence value?
> 
> A new features of Oracle 11g will bypass DML (sequence.nextval) and
> allow normal assignments on sequence values.

This is what it means:

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing 
options

SQL> create sequence test_seq start with 1 cache 2048;

Sequence created.

Elapsed: 00:00:00.09
SQL> declare
  2  a number(10,0);
  3  begin
  4  a:=test_seq.nextval;
  5  dbms_output.put_line('A is:'||a);
  6  end;
  7  /
A is:1

PL/SQL procedure successfully completed.

Elapsed: 00:00:00.07
SQL> /
A is:2

SQL> save /tmp/1
Created file /tmp/1.sql
SQL> connect scott/tiger@stag3
Connected.
SQL> create sequence test_seq start with 1 cache 2048;

Sequence created.

Elapsed: 00:00:00.15
SQL> @/tmp/1
a:=test_seq.nextval;
            *
ERROR at line 4:
ORA-06550: line 4, column 13:
PLS-00357: Table,View Or Sequence reference 'TEST_SEQ.NEXTVAL' not 
allowed in
this context
ORA-06550: line 4, column 1:
PL/SQL: Statement ignored


Elapsed: 00:00:00.10
SQL> select * from v$version;

BANNER
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bi
PL/SQL Release 10.2.0.5.0 - Production
CORE	10.2.0.5.0	Production
TNS for Linux: Version 10.2.0.5.0 - Production
NLSRTL Version 10.2.0.5.0 - Production

Elapsed: 00:00:00.13



-- 
http://mgogala.byethost5.com
0
Reply Mladen 11/9/2010 9:37:55 PM

2 Replies
205 Views

(page loaded in 0.05 seconds)

Similiar Articles:













7/24/2012 6:27:35 AM


Reply: