Pouziti autoincrementu

Petr Vileta petr na practisoft.cz
Čtvrtek Červen 19 02:55:33 CEST 2003


> Prosim, nepouzivejte podobne postupy. Na podobne veci Vam databazovy
> system dava databazove a transakcne hlidanou vec, a tou je v pripade
> MySQL autoincrementovaci sloupec. Jedine u neho mate zajistenou
> rozumnou propustnost celeho systemu spolu s korektnim provedenim te
> veci.
Ja bych rad pouzival autoincrement, jenze on je trochu hloupy.
create table test(cislo int(10) autoincrement, neco varchar(20));
insert into test set neco='ABC';
insert into test set neco='DEF';
select * from test;
|0|ABC|
|1|DEF|
select max(cislo) from test;
# vysledek nactu do promenne $posledni (v Perlu)
delete from test where cislo=$posledni;
insert into test set neco='XYZ';
select * from test;
|0|ABC|
|2|XYZ|

Evidentne jsem chtel smazat posledni zaznam a pridat dalsi, ale tak aby rada
navazovala. Jenze bez sachovani s last_insert_id() se mi to nepodari. A to
jsem uvedl velmi jednoduchy pripad, kdy jsem mezi tim nedelal zadny jiny
select nad jinou tabulkou. Pak muzu na last_insert_id() zapomenout uplne.
Kdyz jsem se MySQL ucil, tak jsem samozrejme autoincrement s ndasenim uvital
(prechazel jsem z Foxpro), ale zase jsem ho honem rychle opustil, protoze
komplikace desny :-)
--
Petr




Další informace o konferenci Databases