Why do I get error "Unable to map datatype" when using the Oracle ODBC driver?

An example of this error is:

SQL> select * from table
[S1000][unixODBC][Easysoft][Oracle]Unable to map datatype( 108 ) for column ( 1 )
[ISQL]ERROR: Could not SQLPrepare

Data type 108 is the Oracle internal type user defined type. The Easysoft Oracle ODBC driver can't map user defined types itself, although you can modify your SQL to work around this.

For example, if you have a table with the user defined type XMLTYPE, you can't query this column, if you do, you get the error shown above. However, if you use the functions getClobVal or getStringVal, you can fetch your user defined type column:

select alias.column.getClobVal() from table alias

Note This only works if you use a table alias.