Voľný priestor môžete vrátiť do databázového priestoru (zmrštiť priestor), keď skomprimujete, preskupíte alebo skomprimujete a preskupíte tabuľky alebo fragmenty; alebo môžete voľný priestor vrátiť samostatne bez komprimácie alebo preskupovania. Vrátenie voľného priestoru zmenší celkovú veľkosť fragmentu alebo tabuľky.
Celú tabuľku dokážete bezpečne zmrštiť bez nepriaznivého zásahu do stratégie alokácie tabuľky. Napríklad, ak máte fragmentovanú tabuľku s jedným fragmentom pre každý deň v týždni a s mnohými predalokovanými fragmentmi pre budúce použitie, tabuľku môžete zmrštiť bez nepriaznivého zásahu do tejto alokačnej stratégie. Ak je tabuľka prázdna, IBM® Informix zmrští tabuľku na veľkosť úvodného rozsahu, ktorá bola zadaná pri vytvorení tabuľky.
Na zmenšenie aktuálnej veľkosti rozsahu môžete použiť klauzulu MODIFY EXTENT SIZE príkazu ALTER TABLE. Keď to urobíte, môžete opätovne spustiť operáciu zmrštenia, aby sa prvý rozsah zmrštil na novú veľkosť rozsahu.
Nevyhnutná podmienka: Musíte sa vedieť pripojiť k databáze sysadmin (štandardne len užívateľ informix) a musíte byť DBSA.
Ak chcete navrátiť voľný priestor do databázového priestoru:
V nasledujúcom príklade vidíte príkaz, ktorý oznámi Informix, aby zmrštil tabuľku s názvom "opera" v databáze "music", ktorej majiteľom je "bob".
EXECUTE FUNCTION task("table shrink","opera","music","bob");
V nasledujúcom príklade vidíte príkaz, ktorý oznámi Informix, aby preskupil a zmrštil fragment
s číslom oddielu 14680071. EXECUTE FUNCTION task("fragment repack shrink," "14680071");