Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.misc -> Re: Oracle transaction question
"Bill" <bli01_at_yahoo.com> a écrit dans le message de news:C02sd.16$%V3.9_at_fe04.lga...
> Hi all,
> Can someone help with this question?
>
> In a program, 2 SQL statements are executed in the same transaction. The
> first is a SELECT statement based on a status column in a table equals to
> "X", e.g. SELECT * FROM TABLE1 WHERE STATUS='X'. The second is a DELETE
> statement, deleting all rows with STATUS='X', e.g. DELETE FROM TABLE1 WHERE
> STATUS='X'. Both are in one transaction.
>
> During the execution of this transaction, after the SELECT but before the
> DELETE, another program inserts another row into TABLE1 with STATUS='X'.
> Will the newly inserted row also be deleted?
>
> Thanks,
> Bill
>
>
If the insert is not commited, no.
If the insert is commited and you are in the default transactional mode, yes.
If the insert is commited and you are in serializable mode, no.
Regards
Michel Cadot
Received on Fri Dec 03 2004 - 13:35:28 CST