| From: | Jörg Schulz <jschulz(at)sgbs(dot)de> |
|---|---|
| To: | pgsql-general(at)postgresql(dot)org |
| Subject: | different transaction handling between postgresql and oracle/mysql |
| Date: | 2003-07-14 07:47:30 |
| Message-ID: | 200307140947.31193.jschulz@sgbs.de |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-general |
Suppose the following:
create table test (a int primary key);
insert into test values (1);
select * from test;
a
=
1
In Postgresql if you do the following in a transaction (either with
autocommit=off or with an explizit begin):
insert into test values (2); -> ok
insert into test values (1); -> error (duplicate key)
insert into test values (3); -> error (transaction aborted)
commit;
You get:
select * from test;
a
=
1
In Oracle/MySQL if you do the same you get:
insert into test values (2); -> ok
insert into test values (1); -> error (duplicate key)
insert into test values (3); -> ok
commit;
select * from test;
a
=
1
2
3
Which behavior is right?
Is there a way to make Postgresql behave like the other databases?
Which other Databases act like Postgresql and which do it like Oracle/MySQL?
Jörg
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Francois Suter | 2003-07-14 07:47:43 | Re: Optimisation, index use question [long] |
| Previous Message | Stephan Szabo | 2003-07-14 07:39:51 | Re: Fw: select null + 0 question |