In this blog post, you’ll learn more about the Sybase Error Cannot create the join index because the datatype of the underlying join virtual table column is not equal to the datatype of the corresponding base table column ‘%1’. and the reason for receiving this error
Sybase SQL Error Message
Cannot create the join index because the datatype of the underlying join virtual table column is not equal to the datatype of the corresponding base table column ‘%1’.
Reason for this Error
The underlying jvt column and the corresponding base table column must be of the same datatype in order to create a join index. One way to get this error is to create a join index on tables containing FLOAT columns with a client application that uses an open client (isql) or JDBC (Sybase Central) connection. For such connections, the database option FLOAT_AS_DOUBLE defaults to ON thereby creating jvt columns as type DOUBLE for the FLOAT columns in the base tables. To create the join using one of these tools, the user must first set FLOAT_TO_DOUBLE to OFF. See the ‘Database Options’ chapter in the ASIQ Reference Manual for details on Database Options.