Informix Error -972
Cause and resolution
Unable to alter table table-name.
The in-place alter table operation cannot be performed. See the accompanying ISAM error for more information.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-972 fires when an in-place ALTER TABLE — the fast-path alter that avoids rewriting the whole
table — can't be carried out, per the official guidance, which points to the accompanying ISAM
error for the specific reason.
- A structural or storage-level obstacle the in-place alter can't work around, per the official guidance — the message itself is generic; the real cause is in the ISAM error returned alongside it.
- An alter request that's individually fine but conflicts with the table's current on-disk layout (fragmentation scheme, extent sizing, or similar), which the in-place path checks for before committing to the fast alter.
Solutions / Resolution
- Read the accompanying ISAM error, per the official guidance — it names the specific condition blocking the in-place alter; -972 alone doesn't.
- Retry as a full (non-in-place)
ALTER TABLEif the in-place path can't complete — this is slower (it rewrites the table) but doesn't have the same structural restrictions. - Address the underlying condition named by the ISAM error — e.g. free space, fragmentation, or extent configuration — if you specifically need the in-place alter to succeed.
Examples
N/A
No specific triggering statement is documented — -972's own text defers entirely to the ISAM error returned alongside it.
Diagnostic Checks
- Capture the ISAM error number reported alongside -972 — this is the primary diagnostic signal, per the official guidance.
- Check available free space and current fragmentation for the table's dbspace(s), common underlying causes for in-place alter failures.
Related Errors / Related Topics
- -269 — "Cannot add column column-name that does not accept nulls." Another
ALTER TABLErestriction, but a data-content one rather than a storage/in-place-mechanism one.
-972 is only the headline; the ISAM error that comes with it is where the actual cause lives — check that first.