Junior — Middle
Jak se mění stav indexu v databázi po operacích mazání a opětovného vkládání záznamů do tabulky SQL?
sobes.tech AI
Odpověď od AI
Po odstranění záznamů z tabulky SQL se stav indexů změní následovně:
- Odstraněné záznamy jsou odstraněny z indexu, tj. příslušné klíče a odkazy na řádky jsou odstraněny.
- Fyzické uvolnění místa ve struktuře indexu se však nemusí stát okamžitě, záleží na systému správy databází (DBMS) a typu indexu.
Při opětovném vkládání záznamů:
- Pokud jsou vkládány nové záznamy se stejnými hodnotami klíčů, jsou přidány do indexu jako nové prvky.
- U některých DBMS (například s automatickým inkrementem klíčů) mohou nové záznamy získat nové hodnoty klíčů, což ovlivňuje index.
Stručně řečeno, index odráží aktuální stav tabulky — obsahuje pouze existující záznamy. Při intenzivních operacích mazání a vkládání může být nutná periodická reorganizace nebo přestavba indexu pro optimalizaci výkonu.
Příklad: pokud v tabulce existuje index na sloupci "id" a odstraníte záznam s id=5, index již nebude obsahovat tento záznam. Při vložení nového záznamu s id=5 (je-li to povoleno) bude index aktualizován tak, aby zahrnoval nový záznam.