generator neprerusovane rady cisel
Karel Zak
zakkr na zf.jcu.cz
Pondělí Únor 11 15:27:00 CET 2002
On Mon, Feb 11, 2002 at 02:59:08PM +0100, Miroslav BENES wrote:
> > Preji dobre odpoledne,
> >
> > v souvislosti s nedavnou diskuzi o sekvencich v pgsql jsem se chtel
> > zeptat, jestli nekoho nenapadlo reseni $subj. Sekvence mi nezarucuji,
> > ze generovana rada cisel nebude obsahovat mezery (viz rollback
> > v transakci). Reseni na urovni tabulky s poslednim ID ma rovnez sve
> > uskali v pripade cteni (a nasledne incrementace ID) vice procesy
> > zaroven... Napada nekoho nejake elegantni reseni nad DB?
>
> a co :
>
>
>
> INSERT INTO tabulka (id, data) VALUES ( 1+ ( select max(id) from tabulka ), "data")
>
>
>
> + primarní klíč.
Na PostgreSQL by to asi bylo pomale (na MySQL asi ne), ale i tak bych si
jist nebyl. "select max(id) from tabulka" muze vracet ruzna data v
ruznych transakcich a divil bych se pokud by tomu tak nebylo i u
Oracle.
> Co se stane při souběžném vkládání z více pocesů ? Na Guptě i na Oraclu tohle
> chodilo, pokud mě paměť neklame.
Neumim si predstavit, co kdyz se v jedne transakci provede nekde
vicekrat ten insert?
Karel
--
Karel Zak <zakkr na zf.jcu.cz>
http://home.zf.jcu.cz/~zakkr/
C, PostgreSQL, PHP, WWW, http://docs.linux.cz, http://mape.jcu.cz
Další informace o konferenci Test