Autor Zpráva
Acci
Profil
Mám tabulku historie, která vypadá takto
|id_stranky|verze|text

Při každé úpravě stránky vložím do tabulky nový řádek s id_stranky a novým textem. Zde ale nastává problém. Abych zjistil, jaké číslo verze mám vložit používám toho:
$verze = $this->db->getvalue('SELECT MAX(verze) FROM historie WHERE id_stranky="5"')+1;

$this->db->query('INSERT INTO historie (id_stranky, verze, text) VALUES("5", "'.$verze.'", "'.$text.'"');

Což je IMHO pomalé a taky díky automacitě operací může dojít ke duplicitním verzím u stránek. Jak z toho ven?
Leo
Profil
Pouzijte primarni klic integer s auto_increment (v MySQL), jinde nevim, Leo
thingwath
Profil
Jinde stejne, jenom tam nebyva auto_increment a dela se to trochu jinak (treba zvlastnim datovym typem).
Acci
Profil
Leo
auto_increment IMHO použít nemůžu. Do jedné tabulky totiž ukládám historie více stránek.
Leo
Profil
V tom pripade nechapu strukturu vasi databaze. Stranky mate v samostatne tabulce? Pak pri aktualizaci vite, kterou upravujete nebo ne, Leo
Leo
Profil
Jo aha, jde o maximalni verzi :-) Chapu. V MySQL by i tak sel u nekterych typu tabulek pouzit auto_increment (v jedne tabulce muze byt vic nezavislych rad), Leo
Acci
Profil
Leo
Myslím, že jsem to našel http://dev.mysql.com/doc/refman/5.0/en/example-auto-increment.html
Hledat v MySQL manuálu mě nikdy nešlo.

Update
Je to ono, funguje to. díky všem.
Leo
Profil
"Hledat v MySQL manuálu mě nikdy nešlo."

Me taky ne, prijde mi neprehledny... Hlavne, ze to slape, Leo
Toto téma je uzamčeno. Odpověď nelze zaslat.

0