Które polecenie MySQL porządkuje tabelę i odzyskuje miejsce zajmowane przez usunięte wcześniej wiersze?
Dobrze.
OPTIMIZE TABLE defragmentuje tabelę i zwalnia nieużywane miejsce.Źle.
MODIFY TABLE nie jest poprawnym poleceniem SQL.Źle.
UPDATE TABLE nie istnieje; UPDATE zmienia dane.Źle.
ANALYZE TABLE aktualizuje statystyki tabeli, nie odzyskuje miejsca.Po wielu operacjach usuwania i aktualizacji tabela bywa pofragmentowana i zajmuje więcej miejsca, niż potrzeba. Polecenie
OPTIMIZE TABLE porządkuje ją: reorganizuje dane i indeksy oraz zwalnia nieużywaną przestrzeń, co bywa też korzystne dla wydajności. Dlatego do uporządkowania tabeli i odzyskania miejsca służy OPTIMIZE TABLE.Pozostałe polecenia nie odzyskują miejsca.
ANALYZE TABLE to realna komenda, ale jej zadaniem jest odświeżenie statystyk wykorzystywanych przez optymalizator zapytań - nie defragmentuje danych. UPDATE TABLE i MODIFY TABLE w MySQL nie istnieją (zmianę danych wykonuje samo UPDATE, a struktury ALTER TABLE). Reorganizację tabeli i odzyskanie miejsca po usuniętych wierszach realizuje OPTIMIZE TABLE, dlatego to ono jest poprawne.