Pouziti autoincrementu

Petr Vileta petr na practisoft.cz
Úterý Červen 17 20:38:55 CEST 2003


>  Jak vlastne treba u DB2 nebo MySQL dostanu nejake ID jeste pred tim
>  nez neco vlozim do tabulky?
No tak konkretne u MySQL to delam takhle:
LOCK TABLE moje_tabulka WRITE, jina_tabulka WRITE;
SELECT MAX(nejake_ciselne_pole)+1 FROM moje_tabulka;
...
INSERT INTO moje_tabulka SET nejake_hodnoty;
INSERT INTO jina_tabulka SET nejake_hodnoty;
UNLOCK TABLES;
Tim mam zarucene, ze behem zjistovani ID mi nikdo jiny do tablek nic
nezapise, ale muze cist. Takze pokud jiny thread chce nacist data pro
zobrazeni, nic u nebrani a pokud chce neco zapsat, tak proste ceka, dokud ja
neskoncim se zapisem a neUNLOCKnu.
--
Petr




Další informace o konferenci Test