B.14. Oracle

B.14.1. Known issues with Oracle

Example B.14. Example properties for Oracle

javax.jdo.option.ConnectionDriverName: oracle.jdbc.driver.OracleDriver
javax.jdo.option.ConnectionURL: jdbc:oracle:thin:@SERVER_NAME:1521:DB_NAME

B.14.1. Known issues with Oracle

  • For VARCHAR fields, null and a blank String are equivalent. Thie means that an object that stores a null String field will have it get read back as a blank String.

  • Oracle corp's JDBC driver for Oracle has only limited support for batch updates. The result for Kodo is that in some cases, the exact object that failed an optimisitic lock check cannot be determined, and Kodo will throw an JDOOptimisticVerificationException with more failed objects than actually failed.

  • Oracle cannot store numbers with more than 38 digits in numeric columns.

  • Pessimistic locking is not supported on queries that use SELECT DISTINCT. Modifying objects found using such queries in pessimistic transactions is permitted but may result in an optimistic lock exception if the same instances are also modified by another concurrent thread.

  • Floats and doubles may lose precision when stored.

  • CLOB columns cannot be used in queries.