Informix Error -16396: Cannot use BLOBs in this expression.
Cause and resolution
Cannot use BLOBs in this expression.
You asked the Debugger to use a TEXT or BYTE variable in an expression. Variables of these types can only be displayed with PRINT or DUMP statements, or assigned null values using the LET statement.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-16396 fires when a TEXT/BYTE variable is used somewhere other than PRINT, DUMP, or
a null-value LET assignment — per the official guidance.
- A
TEXT/BYTEvariable used in an ordinary expression, per the official guidance — the direct, only cause.
Solutions / Resolution
- Only display
TEXT/BYTEvariables withPRINT/DUMP, or assign them null viaLET, per the official guidance.
Examples
Using a TEXT variable in arithmetic
> PRINT mytext + 1
Corrected
> PRINT mytext
Diagnostic Checks
- Check the expression for a
TEXT/BYTEvariable used outsidePRINT/DUMP/nullLET.
Related Errors / Related Topics
- -16395 — "Cannot compare BLOBs to any other value." The specific case of this restriction for comparison expressions.
- -16397 — "Can print only BLOB variables with program =." A related
TEXT/BYTErestriction, aboutPRINT'sPROGRAM =clause being BLOB-only.
A TEXT/BYTE variable was used in an unsupported expression context — only PRINT/DUMP
or a null LET assignment are allowed.