ArnisR Posted September 17, 2011 Report Share Posted September 17, 2011 (edited) Kā ar PHP izveidot tā, lai mysql datubāzes tabulā nevarētu būt vairāk par 50 ierakstiem? Ja tiek pievienoti jauni ieraksti, tad paši vecākie no beigām tiek izdzēsti, lai atbrīvotu vietu jaunajiem. Paldies! Edited September 17, 2011 by ArnisR Quote Link to comment Share on other sites More sharing options...
daGrevis Posted September 17, 2011 Report Share Posted September 17, 2011 Idejiski, Tev vajag pēdējos piecdesmit ierakstus. Quote Link to comment Share on other sites More sharing options...
larvae Posted September 17, 2011 Report Share Posted September 17, 2011 1) Ja tabulas lauks 'id' ir auto_increment, tad dabū ierakstu skaitu un pēc tam izdzēs vecāko - SELECT COUNT(*) FROM tabula; 2) Ja lielāks par 50, tad dabū vecāko ierakstu - SELECT MIN(tabula.id) FROM tabula 3) Izdzēš attiecīgo ierakstu "DELETE FROM tabula WHERE tabula.id = $min_id LIMIT 1" Bet to visu labāk insert triggerī ielikt. Vai vismaz ar transakciju uztaisīt. Padomā, kas notiek, ja tev atnāk 2 ieraksti vienlaicīgi... Quote Link to comment Share on other sites More sharing options...
v3rb0 Posted September 17, 2011 Report Share Posted September 17, 2011 mysql! - viņam var pie delete gan order, gan limit pierakstīt delete from <tabula> order by <id vai pievienošanas datums, ja ir> desc limit 50, 9999999 Quote Link to comment Share on other sites More sharing options...
andism88 Posted September 18, 2011 Report Share Posted September 18, 2011 nosakām ierakstu skaitu datubāzē.. if ($skaits<50) ---> Update where id=vecākais Quote Link to comment Share on other sites More sharing options...
daGrevis Posted September 18, 2011 Report Share Posted September 18, 2011 Kāda jēga dzēst tos ierakstus? :) Nu vismaz pie katras lapas atvēršanas. Es saprastu - reizi nedēļā vai mēnesī... bet ne jau reizi minūtē vai vēl trakāk. :D Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.