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: Sequences?

Re: Sequences?

From: Keith Boulton <kboulton_at_ntlworld.com>
Date: Sat, 16 Feb 2002 00:13:06 -0000
Message-ID: <fphb8.76368$H37.10323477@news2-win.server.ntlworld.com>


Your terminology is a little unclear.

Oracle sequences avoid serialising transactions because the sequence fetch and increment takes place outside the current transaction so the transaction does not have to complete before anyone else can access the sequence. I don't know enough about access to know if this is true for access or not.

I believe it is almost certainly the case the Oracle serialises access to sequences, though without access to the source code it's difficult to tell.

I suspect that a sequence is stored in memory as a single number. The incrementing of this number has to be serialised.

Caching does not affect the need for serialisation, but does affect how long (on average) the fetch and increment takes because of the time taken to write the updated value to disk every <cache> fetches.

damorgan <dan.morgan_at_ci.seattle.wa.us> wrote in message news:3C6BF176.546BA760_at_ci.seattle.wa.us...
> And Oracle can cache in memory a number of numbers so that they do not
serialize
> transactions the way autonumbering does.
>
> Daniel Morgan
>
>
>
> Jim Kennedy wrote:
>
> > It's magic.
> > Sequences are controlled by the database and doled out as you ask for
them
> > eg mysequence.nextval
> > Jim
> > "Bruce" <bghagy_at_attbi.com> wrote in message
> > news:YZFa8.53731$Pz4.283117_at_rwcrnsc53...
> > > What's the mechanism to keep the value unique? If another SELECT is
run
> > > before the first INSERT wouldn't that give you two equal values?
> > >
> > >
> > > "damorgan" <dan.morgan_at_ci.seattle.wa.us> wrote in message
> > > news:3C6A966C.5E02C7DF_at_ci.seattle.wa.us...
> > > > There is no relationship between MS Access's autonumbering and a
> > SEQUENCE.
> > > The
> > > > autonumering is part of the table and is only capable of sequential
> > > numbering.
> > > > It has no flexibility, no programmability, and is strictly tied to a
> > > single
> > > > table. All it is is the following code built in and hidden from the
end
> > > user.
> > > >
> > > > SELECT MAX(numbering_field)
> > > > INTO next_number
> > > > FROM xyz;
> > > >
> > > > INSERT INTO xyz
> > > > (numbering_field + 1, other_field1, other_field2)
> > > > VALUES
> > > > (next_number, someval1, someval2);
> > > >
> > > > Daniel Morgan
> > > >
> > > >
> > > >
> > > > Magnus Ytterstad wrote:
> > > >
> > > > > Not sure how MS Access autonumber works, but it does sound like a
> > > sequence
> > > > > to me.
> > > > >
> > > > > To create a sequence use the following syntax
> > > > >
> > > > > CREATE SEQUENCE MYSEQUENCE INCREMENT BY 1 START WITH 1000;
> > > > >
> > > > > When you want to access the sequence and get the next number, you
just
> > > issue
> > > > > the command MYSEQUENCE.NEXTVAL, i.e.:
> > > > >
> > > > > INSERT INTO MYTABLE (NAME, DEPT, ID)
> > > > > VALUES ('John', 'Sales', MYSEQUENCE.NEXTVAL);
> > > > >
> > > > > Hope this helps!
> > > > > -magnus.
> > > > >
> > > > > Bruce <bghagy_at_attbi.com> wrote in message
> > > > > news:gP3a8.39737$bh3.256829_at_rwcrnsc52.ops.asp.att.net...
> > > > > > How would one go about implementing the MS Access autonmuber
data
> > type
> > > in
> > > > > > 8i? Are sequences the way to go and could you point me in the
right
> > > > > > direction.
> > > > > >
> > > > > >
> > > >
> > >
> > >
>
Received on Fri Feb 15 2002 - 18:13:06 CST

Original text of this message

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