Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.misc -> Re: Oracle Sequence Num generator from Java

Re: Oracle Sequence Num generator from Java

From: Thomas Kyte <tkyte_at_us.oracle.com>
Date: 27 Aug 2001 07:29:03 -0700
Message-ID: <9mdlff030tb@drn.newsguy.com>


In article <3B110A01.953C6FAF_at_sympatico.ca>, Vader says...
>
>Hi!
>
>I'm newbie...how would I use Oracle's sequence number generator (don't
>know exact tech name)....from my servlet or java code.....in my sql
>statement??...help
>
>..in psql it is .....select d_seq.nextval into v_num fom dual
>
>thanks
>

Well, you can insert it directly in your inserts:

   "insert into t (pk,c1,c2,c3) values ( d_seq.nextval, ?, ?, ? )"

You can select it from dual:

    ResultSet rset =

              stmt.executeQuery( "select d_seq.nextval from dual" );

    if ( rset.next() )
      System.out.println( rset.getString (1) );

You can even insert/select it in one statement:

    CallableStatement stmt =

        con.prepareCall("begin "+
                        "insert into t (id) values (d_seq.nextval) "+
                        "returning id into ?;"+
                        "end;");

    stmt.registerOutParameter(1, Types.INTEGER);     stmt.execute();
    System.out.println( "Returned value = " + stmt.getInt(1) );

--
Thomas Kyte (tkyte@us.oracle.com)             http://asktom.oracle.com/ 
Expert one on one Oracle, programming techniques and solutions for Oracle.
http://www.amazon.com/exec/obidos/ASIN/1861004826/  
Opinions are mine and do not necessarily reflect those of Oracle Corp 
Received on Mon Aug 27 2001 - 09:29:03 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US