In this blog post, let’s learn about the error message “4104 If a character literal was intended, you must use the single quote delimiter: ‘literal’.The use of double quotes causes SQL/MX to interpret column name as a delimited identifier column name.column name is a delimited ANSI identifier, such as MYCOL.” when working with HPE NonStop SQL/MX, the reason for the error and the solution to fix this error message.
Error Message
4104 If a character literal was intended, you must use the single quote delimiter: ‘literal’.The use of double quotes causes SQL/MX to interpret column name as a delimited identifier column name.column name is a delimited ANSI identifier, such as MYCOL.
Reason for the Error
You attempted to select from a table using a character literal, but you used double quotes as the delimiter instead of single quotes.
For example, if you enter this statement, in which “Lower” is a character literal:
>>select * from T050a where a=”Lower”;
you will receive this error:
*** ERROR[4001] Column “Lower” is not found. Tables in scope: CAT.SCH.T050A. Default schema: CAT.SCH.
*** ERROR[4104] If a character literal was intended, you must use the single quote delimiter instead of the double: ‘Lower’ instead of “Lower”.
Solution
Replace the double quotes with single quotes