Informix Error -469
-469 This descriptor does not exist.
The name of the system descriptor area that is specified does not exist in the list of system descriptor areas, so it has not been allocated. You must execute the ALLOCATE DESCRIPTOR statement to allocate this descriptor name before you use it.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-469 fires when a statement references a SQL descriptor area by name, but no ALLOCATE DESCRIPTOR was ever executed for that name — descriptors, like prepared statements, need
explicit setup before use.
- A statement using
USING DESCRIPTOR desc_nameor similar without a priorALLOCATE DESCRIPTOR desc_name— the direct, most common cause. - A misspelled descriptor name that doesn't match what was actually allocated.
- A descriptor that was deallocated (
DEALLOCATE DESCRIPTOR) and then referenced again without reallocating it.
Solutions / Resolution
- Execute
ALLOCATE DESCRIPTORfor the descriptor name before using it, per the official guidance. - Double-check the descriptor name's spelling against what was actually allocated.
- If the descriptor was deallocated earlier, reallocate it before attempting to reuse the name.
Examples
Allocating a descriptor before use
ALLOCATE DESCRIPTOR 'desc1';
PREPARE stmt1 FROM 'SELECT * FROM orders WHERE order_id = ?';
DESCRIBE stmt1 USING SQL DESCRIPTOR 'desc1';
EXECUTE stmt1 USING SQL DESCRIPTOR 'desc1';
The disallowed direct attempt
DESCRIBE stmt1 USING SQL DESCRIPTOR 'desc1';
-- -469: 'desc1' was never allocated
Diagnostic Checks
- Check whether
ALLOCATE DESCRIPTORwas executed for the descriptor name in question. - Confirm the descriptor name's spelling matches exactly.
- Check for an intervening
DEALLOCATE DESCRIPTORon the same name.
Related Errors / Related Topics
- -411 — "Cannot specify both host variables and descriptor." A related descriptor-usage error, about a conflicting combination rather than a missing allocation.
- -418 — "NULL SQLDA descriptor or host variable list encountered." Another related descriptor/SQLDA-structural error in the same general dynamic-SQL family.
Descriptors need explicit ALLOCATE DESCRIPTOR setup before use, just as prepared statements
need PREPARE — check for a missing or mismatched allocation first.