Joyride Posted January 29, 2007 Report Posted January 29, 2007 Ir tabula sessions, kas glaba lietotaju sesijas datus (ka alternativa PHP sesiju parvaldibai). Pats pirmais ir id(primary, auto increment) lauks. Tatad, pievienojot jaunu ierakstu saja tabula, logiski, ka id palielinas par 1. Jautajums ir tads - ka var indeksa laukam uztaisit "repair", lai runa piemers: id, host, time, data 47, 127.0.0.1, 2007-01-29 10:35:27, N; Redzams, ka tabula ir tikai viens ieraksts ar id 47 (jo pirms tam tikusi dzesti ieraksti). Vai var izdarit ta, lai katrs nakosais ieraksts butu ar id, kas atkal saktos no 1 un neatkartotos, jo agri vai velu kads jaunais pievienotais ieraksts ar savu id vertibu parsniegs atlautas robezas (sobrid: id, smallint(5)).
andrisp Posted January 29, 2007 Report Posted January 29, 2007 http://www.google.lv/search?hl=lv&q=re...increment+value Bet vispār vari jau arī nomainīt id tipu uz unsigned int. Tad diezvai izbeigsies.
larvae Posted January 29, 2007 Report Posted January 29, 2007 A iebāzt klāt boolean lauku 'expired' un INSERT vietā lietot UPDATE neder?
litt Posted January 29, 2007 Report Posted January 29, 2007 Ja Tev sekundē neveidojās miljons jaunas sesijas, tad var vienkāršāk.. Glabā nevis ID, bet timestamp + kaut kāds randoms. Katru sekundi timestamps mainīsies, random palīdzēs izvairīties no kļūdām, ja senkundes laikā izveidojās vairāk kā 1 sesija. Lauka garums gan būs lielāks, toties tas būs konstants un neizies "no rāmjiem"
bubu Posted January 29, 2007 Report Posted January 29, 2007 Tak, ko visiem vajag tos id pēc kārtas vienmēr!! Liec auto_increment un miers. Un vēl uzliec, lai vienreiz dienā shedulēts tasks izdzēš ierakstus, kas vecāki par 10h (piemēram).
Recommended Posts