Informix Error -484
-484 Statement/cursor's name must be between 1 to 128 characters.
The maximum length for statement and cursor names depends on the database server. In IBM Informix Dynamic Server, the maximum length is 128 characters. In other Informix database servers, the maximum length is 18 characters.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-484 is a broader length-validation restriction covering both statement and cursor names
together: the name must be at least 1 character (non-empty) and no more than 128 characters —
with the important caveat that the 128-character ceiling itself only applies on IBM Informix
Dynamic Server; other Informix servers cap names at 18 characters, same as -481/-483.
- An empty string used as a statement or cursor name — the "at least 1 character" side of
this restriction, distinct from
-481's narrower "not prepared" scenario. - A name exceeding 128 characters even on Dynamic Server — an unusually long programmatically generated name.
- A name between 19 and 128 characters, valid on Dynamic Server but exceeding the 18- character limit on a different, older Informix server the code is actually running against.
Solutions / Resolution
- Ensure the statement/cursor name is non-empty and within the applicable length limit, per the official guidance.
- Check which Informix server edition is actually in use — Dynamic Server allows up to 128 characters, but other editions cap at 18.
- For code intended to run across editions, use the more conservative 18-character limit and never an empty name.
Examples
A valid, short, non-empty name
DECLARE curs1 CURSOR FOR SELECT * FROM orders;
An empty name
char cursor_name[32] = "";
/* DECLARE :cursor_name CURSOR FOR ...; */
/* -484: cursor_name is empty */
Diagnostic Checks
- Check whether the name is empty — this specific "1 to 128" phrasing calls out the non-empty requirement explicitly.
- Measure the name's length against the applicable limit for the actual server edition in use.
Related Errors / Related Topics
- -481 — "Invalid statement name or statement was not prepared." A related statement-name validation error, though focused on the "not prepared" scenario rather than length/emptiness.
- -483 — "SQL descriptor's name is too long. Limit is 128 characters." The closely related descriptor-name counterpart of this same version-dependent length restriction.
Check both ends of the range — an empty name and an over-length name are both covered by this one restriction, and the actual ceiling depends on which Informix edition is running.