Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: PILNE! [MySQL] Zostaje tylko np. 1000 najnowszych rekordów
Forum PHP.pl > Forum > Bazy danych > MySQL
vodkon
MySQL jak utworzyć tabele aby zapamiętywała tylko np. 1000 najnowszych rekordów a jak jest więcej niż 1000 różnych rekordów to znikają. chodzi o to że do bazy często trafiały by rekordy. Zrobić taki limit w bazie aby nie była zapchana

Prosił bym o szybką odpowiedz
thek
DELETE z offsetem na 1000 i jakaś dużą wartość jako granica to najczęściej stosowane.
  1. DELETE * FROM tabela LIMIT 1000, 566446

Oczywiście możesz wcześniej jakiś ORDER BY zastosować.
vodkon
niema nic automatycznego w mysql żeby utworzyć tabele z taką automatyczną funkcją ?
thek
Teoretycznie jest możliwość ustawienia przy tworzeniu tabeli MAX_ROWS, ale nawet dokumentacja wspomina, że to tylko wskazówka dla silnika bazy, a nie wytyczna. Niekoniecznie musi się do niej zastosować.
mmmmmmm
Trigger after insert
thek
Można, ale nie każdy usługodawca pozwala na stosowanie triggerów (chodzi o shared hostingi w ogromnej mierze), co nieco ogranicza zastosowanie tego rozwiązania.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.