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

Home -> Community -> Usenet -> c.d.o.server -> Re: Transactions ISOLATIONS level

Re: Transactions ISOLATIONS level

From: Andrey Goryunov <goryunov_at_braz.ru>
Date: 30 Jun 2001 01:05:10 -0700
Message-ID: <cae34277.0106300005.15dbae3e@posting.google.com>

"Francesco Marchioni" <fmarchioni_at_libero.it> wrote in message news:<_r6%6.2691$F85.96823_at_news.infostrada.it>...
> > > 2) When I issue a SELECT FOR UPDATE the transaction level switches
> > > automatically to TRANSACTIONS_SERIALIZABLE ?
> Hi Fumi,
> well this looks surprising a bit, (though I'm not a big expert of Oracle !)
> but I imagined that if you issue a SELECT for UPDATE on the WHOLE table
> then you lock enterely the table, so nobody else can for example insert
> or modify other records on the table 'til you issue a commit...so the
> isolation
> level should be higher...I expect it to be TRANSACTION_SERIALIZABLE...
> please correct me if I'm wrong (as I said I have just a basic Oracle
> knowledge!)
> Regards
> Francesco
>
> "fumi" <fumi_at_tpts5.seed.net.tw> ha scritto nel messaggio
> news:9hfkhm$f68$8_at_news.seed.net.tw...
> >
> > "Francesco Marchioni" <fmarchioni_at_libero.it> ¼¶¼g©ó¶l¥ó
> > news:jSl_6.5944$363.259102_at_news.infostrada.it...
> > > Hi all,
> > > I'm studying transactions isolation levels.
> > > I have some questions, hope somebody will help me:
> > >
> > > 1) How can I change the transaction isolation level via SQL - PL/SQL ?
> > > ( I mean without administrator's tools)
> >
> >
> > Oracle supports only SERIALIZABLE and READ COMMITTED.
> > Use the SQL command:
> >
> > ALTER SESSION SET ISOLATION_LEVEL= {SERIALIZABLE | READ COMMITTED}
> >
> > By the way, I think no tools support this rare used statement.
> >
> > > 2) When I issue a SELECT FOR UPDATE the transaction level switches
> > > automatically to TRANSACTIONS_SERIALIZABLE ?
> >
> >
> > No, after you issue a SELECT FOR UPDATE command,
> > you still in (default) READ COMMITTED level.
> >
> > > 3) I understand row locking and table locking but what does it mean
 "page"
> > > locking ??
> >
> >
> > Oracle doesn't use page lock.
> > Page lock means that if you locks one or more rows in a page (block),
> > then all rows in the page (block) are locked.
> >
> >
> >

Hi,
If you lock data in a table though select ... for update, you lock only current data, but you can insert and update new inserted rows in the table. And, you're right, you can't change the locked rows.

Regards,
Andrey Goryunov Received on Sat Jun 30 2001 - 03:05:10 CDT

Original text of this message

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