sql >> Databáze >  >> RDS >> Mysql

Má InnoDB statické tabulky?

InnoDB má řádky s pevnou šířkou a deklarování všech sloupců v tabulce jako s pevnou šířkou může mít určitou výhodu. Hlavní výhodou je, že všechny „díry“ na stránce lze znovu použít pro jakékoli vkládání, protože všechny řádky jsou stejně dlouhé. Díky tomu je opětovné využití prostoru poněkud efektivnější. Nepokoušel bych se však vynutit pevnou šířku pro žádné řetězce nad několik desítek bajtů, protože náklady na uložení dalších dat na stránku (a tedy méně řádků na stránku) by rychle převýšily veškeré úspory/zisky, které byste získali z více efektivní opětovné využití prostoru.

Řádky s pevnou šířkou však není umožňují jakoukoli optimalizaci prohledávání řádků (jako je tomu u MyISAM). Řádkové úložiště InnoDB je vždy založeno na stránce a používá B+strom s dvojitě propojenými seznamy stránek a jednotlivě propojenými záznamy v rámci stránky. Procházení řádků vždy používá tyto struktury a nelze je provést jiným způsobem.



  1. Přidejte znak měny £, $ do určitých polí ORACLE

  2. Dočasná tabulka vytvořená uživatelem MySQL je plná

  3. Zjištění serveru MySQL v síti LAN pomocí naslouchacího portu (Inno Setup)

  4. Tabulka historie SQL serveru – naplnit pomocí SP nebo Trigger?