Database and JDBC Compatibility
|
Database Support for SQL data types
|
|
•
|
The Database package does not currently support all the functionality provided by the JDBC. Maple does not support all the SQL99 data types.
|
|
The Database package supports the following SQL data types: BIGINT, BINARY, BIT, BOOLEAN, CHAR, DATE, DECIMAL, DOUBLE, FLOAT, INTEGER, LONGVARBINARY, LONGVARCHAR, SQLNULL, NUMERIC, REAL, SMALLINT, TIME, TIMESTAMP, TINYINT, VARBINARY, VARCHAR.
|
•
|
In particular, Database does not currently support Large Objects (for example, CLOBs and BLOBs), ARRAYs, or STRUCTs.
|
•
|
Database tries to automatically convert from SQL types to Maple types wherever needed. When converting SQL types to Maple types, this process is fairly straightforward. However, some SQL types do not have unique representations in Maple. Therefore Database may not be able to correctly convert a Maple type into the correct SQL type. In these cases explicit type casting must be used to tell Database what SQL type to use. For more information, see conversions.
|
|
|
Database and JDBC versions
|
|
•
|
For complete Database functionality, use a JDBC version 3 driver. However, the Database package, in general, can function, in a more limited fashion, using JDBC version 2 drivers.
|
•
|
Another possible problem is incomplete support for the JDBC interface by the JDBC driver. For example, some JDBC drivers do not allow multiple statements in a Statement or PreparedStatement. Database attempts to function with incomplete JDBC Drivers; however, in many cases you must work around these issues.
|
•
|
For a list of known issues with various databases, see the issues help page.
|
|
|