Set the access method using SQL_INFX_ATTR_LO_AUTOMATIC

You can use the SQL_INFX_ATTR_LO_AUTOMATIC attribute to tell the database server whether you will access smart large objects by using the ODBC API or the ifx_lo functions.

If the application enables the SQL_INFX_ATTR_LO_AUTOMATIC attribute as a connection attribute, all statements for that connection inherit the attribute value. To change this attribute value per statement, you have to set and reset it as a statement attribute. If you enable this attribute for the statement, the application can access the smart large object by using the standard ODBC way, as previously described. If you do not enable this attribute for the statement, the application accesses smart large objects by using ifx_lo functions. The application cannot use the ifx_lo functions if this attribute is enabled for the statement.

You can also enable the SQL_INFX_ATTR_LO_AUTOMATIC attribute by turning on the Report Standard ODBC Types option under the Advanced tab of the ODBC Administration for HCL OneDB™ Driver DSN.

SQLDescribeCol for a CLOB data type column returns SQL_LONGVARCHAR for the DataPtrType. SQLDescribeCol for a BLOB data type column returns SQL_LONGVARBINARY, if the SQL_INFX_ATTR_LO_AUTOMATIC attribute is enabled for that statement.

SQLColAttributes for a CLOB data type column returns SQL_LONGVARCHAR for the Field Identifier of SQL_DESC_TYPE, whereas for the BLOB data type column it returns SQL_LONGVARBINARY only if the SQL_INFX_ATTR_LO_AUTOMATIC attribute is enabled for that statement.