Informix Error -9910: Byte, Text, Serial or Serial8 or Bigserial data types in collection type not allowed.
Cause and resolution
Byte, Text, Serial or Serial8 or Bigserial data types in collection type not allowed.
The fields of a row within a collection and the elements of a collection cannot be of type TEXT, BYTE, SERIAL, or SERIAL8 or BIGSERIAL.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-9910 fires when a collection type's row fields or elements are of type TEXT, BYTE, SERIAL, SERIAL8, or BIGSERIAL — per the official guidance.
- A collection's row field or element declared as TEXT/BYTE/SERIAL/SERIAL8/ BIGSERIAL, per the official guidance — the direct, only cause.
Solutions / Resolution
- Use a different data type for the collection's row fields/elements, per the official guidance's restriction.
Examples
A collection element of type BYTE
CREATE ROW TYPE my_row (id INT, data LIST(BYTE NOT NULL)); -- -9910
Corrected
CREATE ROW TYPE my_row (id INT, data LIST(BLOB NOT NULL));
Diagnostic Checks
- Check the collection's row field/element types, and replace any TEXT/BYTE/SERIAL/ SERIAL8/BIGSERIAL with a supported type.
Related Errors / Related Topics
- -9911 — "Defaults on collection type column not allowed." A related collection- column-definition restriction, on default values rather than element type.
- -9912 — "Constraints on collection type column not allowed." A related collection- column-definition restriction, on constraints rather than element type.
A collection's row field or element was TEXT/BYTE/SERIAL/SERIAL8/BIGSERIAL, which isn't allowed — use a different type.