InnoDB ma wiersze o stałej szerokości i deklarowanie wszystkich kolumn w tabeli jako o stałej szerokości może być korzystne. Główną korzyścią jest to, że wszystkie „dziury” na stronie mogą być ponownie użyte do dowolnego wstawiania, ponieważ wszystkie wiersze mają tę samą długość. To sprawia, że ponowne wykorzystanie przestrzeni jest nieco bardziej wydajne. Nie próbowałbym jednak wymuszać stałej szerokości dla dowolnych ciągów o długości kilkudziesięciu bajtów, ponieważ koszt przechowywania dodatkowych danych na stronę (a tym samym mniej wierszy na stronę) szybko przewyższyłby wszelkie oszczędności/zyski, które można uzyskać z większej wydajne ponowne wykorzystanie przestrzeni.
Jednak posiadanie wierszy o stałej szerokości nie pozwalają na dowolną optymalizację skanowania wierszy (jak to ma miejsce w przypadku MyISAM). Przechowywanie wierszy w InnoDB jest zawsze oparte na stronach i wykorzystuje drzewo B+ z podwójnie połączonymi listami stron i pojedynczo powiązanymi rekordami w obrębie strony. Przemierzanie wierszy zawsze korzysta z tych struktur i nie można tego zrobić w żaden inny sposób.