The IFX_LONGID environment variable setting and the version number of the client application determine whether a given client application is capable of handling long identifiers. (Older versions of Informix databases restricted SQL identifiers to 18 or fewer bytes; long identifiers can have up to 128 bytes when IFX_LONGID is set.) Valid IFX_LONGID values are 1 and 0.
>>-setenv--IFX_LONGID--+-1-+----------------------------------->< '-0-'
When IFX_LONGID is set to zero, applications display only the first 18 bytes of long identifiers, without indicating (by + ) that truncation has occurred.
If IFX_LONGID is unset or is set to a value other than 1 or 0, the determination is based on the internal version of the client application. If the (server-based) version is not less than 9.0304, or is in the (CSDK-based) range 2.90 ≤ version < 4.0, the client is considered capable of handling long identifiers. Otherwise, the client application is considered incapable.
The IFX_LONGID setting overrides the internal version of the client application. If the client cannot handle long identifiers despite a newer version number, set IFX_LONGID to 0. If the client version can handle long identifiers despite an older version number, set IFX_LONGID to 1.
If you set IFX_LONGID on the client, the setting affects only that client. If you bring up the database server with IFX_LONGID set, all client applications use that setting by default. If IFX_LONGID is set to different values on the client and on the database server, however, the client setting takes precedence.