diff --git a/openjpa-project/src/doc/manual/ref_guide_dbsetup.xml b/openjpa-project/src/doc/manual/ref_guide_dbsetup.xml
index b3bed5d44..5c34853cc 100644
--- a/openjpa-project/src/doc/manual/ref_guide_dbsetup.xml
+++ b/openjpa-project/src/doc/manual/ref_guide_dbsetup.xml
@@ -114,8 +114,8 @@ plugin parameters described in .
ConnectionProperties
-
-openjpa.ConnectionProperties: If the listed driver is an
+
+openjpa.ConnectionProperties: If the listed driver is an
instance of java.sql.Driver, this string will be parsed
into a Properties instance, which will then be used to
obtain database connections through the Driver.connect(String url,
@@ -132,8 +132,8 @@ as a plugin properties string, and matched to the bean setter methods of the
ConnectionFactoryProperties
-
-openjpa.ConnectionFactoryProperties: OpenJPA's built-in
+
+openjpa.ConnectionFactoryProperties: OpenJPA's built-in
DataSource allows you to set the following options via
this plugin string:
@@ -236,12 +236,12 @@ Persistence.createEntityManagerFactory under the
Bind the DataSource into JNDI, and then specify its
-location in the jta-data-source or
-non-jta-data-source element of the
+location in the jta-data-source or
+non-jta-data-source element of the
JPA XML format (depending on
whether the DataSource is managed by JTA), or in the
-
-openjpa.ConnectionFactoryName property.
+
+openjpa.ConnectionFactoryName property.
@@ -252,13 +252,13 @@ openjpa.ConnectionFactoryName property.
Specify the full class name of the DataSource
-implementation in the
-openjpa.ConnectionDriverName property in place of a JDBC
+implementation in the
+openjpa.ConnectionDriverName property in place of a JDBC
driver. In this configuration OpenJPA will instantiate an instance of the named
class via reflection. It will then configure the DataSource
with the properties in the
-
-openjpa.ConnectionProperties setting.
+
+openjpa.ConnectionProperties setting.
@@ -315,9 +315,9 @@ to the application server. To notify OpenJPA that your third-party
DataSource is managed by the application server, use the
jta-data-source element of your
persistence.xml file or set the
-
-openjpa.ConnectionFactoryMode property to
-managed.
+
+openjpa.ConnectionFactoryMode property to
+managed.
Note that OpenJPA can only use managed DataSources when
@@ -701,20 +701,219 @@ typically won't use these properties unless you are designing your own
DBDictionary for an unsupported database.
-
+
+
+
+
+
+ SQL
+
+
+ AllowsAliasInBulkClause
+
+
+AllowsAliasInBulkClause:
+When true, SQL delete and update statements may use table aliases.
+
+
+
+
+
+
+ DDL
+
+
+ ArrayTypeName
+
+
+ArrayTypeName: The overridden default column type for
+java.sql.Types.ARRAY. This is used only when the schema is
+generated by the mappingtool.
+
+
+
+
+
+
+ persistent fields
+
+
+ automatic field values
+
+
+ AutoAssignClause
+
+
+AutoAssignClause: The column definition clause to append to
+a creation statement. For example, "AUTO_INCREMENT" for
+MySQL. This property is set automatically in the dictionary, and should not need
+to be overridden, and is only used when the schema is generated using the
+mappingtool.
+
+
+
+
+
+
+ DDL
+
+
+ AutoAssignTypeName
+
+
+
+
+ persistent fields
+
+
+ automatic field values
+
+
+ AutoAssignTypeName
+
+
+AutoAssignTypeName:
+The column type name for auto-increment
+columns. For example, "BIGSERIAL" for PostgreSQL. This
+property is set automatically in the dictionary and should not need to be
+overridden. It is used only when the schema is generated using the
+mappingtool.
+
+
+
JDBC
- DriverVendor
+ BatchLimit
-DriverVendor: The vendor of the particular JDBC driver you
-are using. Some dictionaries must alter their behavior depending on the driver
-vendor. See the VENDOR_XXX constants defined in your
-dictionary's Javadoc for available options.
+BatchLimit:
+The default batch limit for sending multiple SQL statements at once to the
+database. A value of -1 indicates unlimited batching, and any positive integer
+indicates the maximum number of SQL statements to batch together.
+Defaults to 0 which disables batching.
+
+
+
+
+
+
+ DDL
+
+
+ BigintTypeName
+
+
+BigintTypeName: The overridden default column type for
+java.sql.Types.BIGINT. This is used only when the schema is
+generated by the mappingtool.
+
+
+
+
+
+
+ DDL
+
+
+ BinaryTypeName
+
+
+BinaryTypeName: The overridden default column type for
+java.sql.Types.BINARY. This is used only when the schema is
+generated by the mappingtool.
+
+
+
+
+
+
+ DDL
+
+
+ BitTypeName
+
+
+BitTypeName: The overridden default column type for
+java.sql.Types.BIT. This is used only when the schema is generated by
+the mappingtool.
+
+
+
+
+
+
+ BLOB
+
+
+ BlobBufferSize
+
+
+BlobBufferSize: This property establishes the buffer size in
+the INSERT/UPDATE operations with an
+java.io.InputStreamThis is only used with OpenJPA's
+. Defaults to 50000.
+
+
+
+
+
+
+ DDL
+
+
+ BlobTypeName
+
+
+
+
+ BLOB
+
+
+ BlobTypeName
+
+
+BlobTypeName: The overridden default column type for
+java.sql.Types.BLOB. This is used only when the schema is
+generated by the mappingtool.
+
+
+
+
+
+
+ DDL
+
+
+ BooleanTypeName
+
+
+BooleanTypeName:
+The overridden default column type for
+java.sql.Types.BOOLEAN. This is used only when the schema
+is generated by the mappingtool.
+
+
+
+
+
+
+ SQL
+
+
+ CastFunction
+
+
+CastFunction:
+The SQL function call to cast a value to another SQL type.
+Use the tokens {0} and {1} to represent
+the two arguments. The result of the function is convert the
+{0} value to a {1} type.
+The default is "CAST({0} AS {1})".
@@ -732,19 +931,110 @@ between the schema name and the table name. This is typically "."
, which is the default.
-
+
DDL
- CreatePrimaryKeys
+ CharTypeName
-CreatePrimaryKeys: If false, then do not
-create database primary keys for identifiers. Defaults to true
-.
+CharTypeName: The overridden default column type for
+java.sql.Types.CHAR. This is used only when the schema is
+generated by the mappingtool.
+
+
+
+
+
+
+ DDL
+
+
+ CharacterColumnSize
+
+
+CharacterColumnSize: The default size of varchar
+ and char columns. Typically 255.
+
+
+
+
+
+
+ CLOB
+
+
+ ClobBufferSize
+
+
+ClobBufferSize: This property establish the buffer size in
+the INSERT/UPDATE operations with a
+java.io.ReaderThis is only used with OpenJPA's
+. Defaults to 50000.
+
+
+
+
+
+
+ DDL
+
+
+ ClobTypeName
+
+
+
+
+ CLOB
+
+
+ ClobTypeName
+
+
+ClobTypeName: The overridden default column type for
+java.sql.Types.CLOB. This is used only when the schema is
+generated by the mappingtool.
+
+
+
+
+
+
+ JDBC
+
+
+ ClosePoolSQL
+
+
+ClosePoolSQL:
+A special command to issue to the database when shutting down the pool.
+Usually the pool of connections to the database is closed when the
+application is ending. For embedded databases, whose lifecycle is
+coterminous with the application, there may be a special
+command, usually "SHUTDOWN",
+that will cause the embedded database to close cleanly.
+Defaults to null.
+
+
+
+
+
+
+ SQL
+
+
+ ConcatenateFunction
+
+
+ConcatenateFunction:
+The SQL function call or operation to concatenate two strings.
+Use the tokens {0} and {1} to represent
+the two arguments. The result of the function or operation is to concatenate
+the {1} string to the end of the {0}
+string. Defaults to "({0}||{1})".
@@ -758,24 +1048,470 @@ create database primary keys for identifiers. Defaults to true
ConstraintNameMode: When creating constraints, whether to
-put the constraint name before the definition (before),
-just after the constraint type name (mid), or after the
-constraint definition (after). Defaults to before
-.
+put the constraint name before the definition ("before"),
+just after the constraint type name ("mid"), or after the
+constraint definition ("after").
+Defaults to "before".
-
+
DDL
- MaxTableNameLength
+ CreatePrimaryKeys
-MaxTableNameLength: The maximum number of characters in a
-table name. Defaults to 128.
+CreatePrimaryKeys: When false, do not
+create database primary keys for identifiers. Defaults to true
+.
+
+
+
+
+
+
+ joins
+
+
+ CrossJoinClause
+
+
+CrossJoinClause: The clause to use for a cross join
+(cartesian product). Defaults to "CROSS JOIN".
+
+
+
+
+
+
+ SQL
+
+
+ CurrentDateFunction
+
+
+CurrentDateFunction:
+The SQL function call to obtain the current date from the database.
+Defaults to "CURRENT_DATE".
+
+
+
+
+
+
+ SQL
+
+
+ CurrentTimeFunction
+
+
+CurrentTimeFunction:
+The SQL function call to obtain the current time from the database.
+Defaults to "CURRENT_TIME".
+
+
+
+
+
+
+ SQL
+
+
+ CurrentTimestampFunction
+
+
+CurrentTimestampFunction:
+The SQL function call to obtain the current timestamp from the database.
+Defaults to "CURRENT_TIMESTAMP".
+
+
+
+
+
+
+ JDBC
+
+
+ DatePrecision
+
+
+DatePrecision:
+The database is able to store time values to this degree of precision,
+which is expressed in nanoseconds.
+This value is usually one million, meaning that the database is able
+to store time values with a precision of one millisecond. Particular
+databases may have more or less precision.
+OpenJPA will round all time values to this degree of precision
+before storing them in the database.
+Defaults to 1000000.
+
+
+
+
+
+
+ DDL
+
+
+ DateTypeName
+
+
+DateTypeName: The overridden default column type for
+java.sql.Types.DATE. This is used only when the schema is
+generated by the mappingtool.
+
+
+
+
+
+
+ DDL
+
+
+ DecimalTypeName
+
+
+DecimalTypeName: The overridden default column type for
+java.sql.Types.DECIMAL. This is used only when the schema is
+generated by the mappingtool.
+
+
+
+
+
+
+ SQL
+
+
+ DistinctCountColumnSeparator
+
+
+DistinctCountColumnSeparator: The string the database uses
+to delimit between column expressions in a SELECT COUNT(DISTINCT
+column-list) clause. Defaults to null
+for most databases, meaning that
+multiple columns in a distinct COUNT clause are not supported.
+
+
+
+
+
+
+ DDL
+
+
+ DistinctTypeName
+
+
+DistinctTypeName: The overridden default column type for
+java.sql.Types.DISTINCT. This is used only when the schema
+is generated by the mappingtool.
+
+
+
+
+
+
+ DDL
+
+
+ DoubleTypeName
+
+
+DoubleTypeName: The overridden default column type for
+java.sql.Types.DOUBLE. This is used only when the schema is
+generated by the mappingtool.
+
+
+
+
+
+
+ JDBC
+
+
+ DriverVendor
+
+
+DriverVendor: The vendor of the particular JDBC driver you
+are using. Some dictionaries must alter their behavior depending on the driver
+vendor. Dictionaries usually detect the driver vendor and set this property
+themselves. See the VENDOR_XXX constants defined in the
+DBDictionary Javadoc for available options.
+
+
+
+
+
+
+ SQL
+
+
+ DropTableSQL
+
+
+DropTableSQL:
+The SQL statement used to drop a table. Use the token {0}
+as the argument for the table name.
+Defaults to "DROP TABLE {0}".
+
+
+
+
+
+
+ SQL
+
+
+ FixedSizeTypeNames
+
+
+FixedSizeTypeNames:
+A comma separated list of additional database types that have a size
+defined by the database. In other words, when a column of a fixed
+size type is declared, its size cannot be defined by the user. Common
+examples would be DATE, FLOAT,
+and INTEGER.
+Each database dictionary has its own internal set of fixed size type names
+that include the names mentioned here and many others.
+Names added to this property are added to the dictionary's internal set.
+Defaults to null.
+
+
+
+
+
+
+ DDL
+
+
+ FloatTypeName
+
+
+FloatTypeName: The overridden default column type for
+java.sql.Types.FLOAT. This is used only when the schema is
+generated by the mappingtool.
+
+
+
+
+
+
+ SQL
+
+
+ ForUpdateClause
+
+
+
+
+ locking
+
+
+ ForUpdateClause
+
+
+ForUpdateClause: The clause to append to SELECT
+ statements to issue queries that obtain pessimistic locks. Defaults
+to "FOR UPDATE".
+
+
+
+
+
+
+ Oracle
+
+
+ GetStringVal
+
+
+
+
+ JDBC
+
+
+ GetStringVal
+
+
+GetStringVal:
+A special function to return the value of an XML
+column in a select statement. For example, Oracle uses
+".getStringVal()", as in,
+"select t0.xmlcol.getStringVal() from xmltab t0".
+Defaults to the empty string.
+
+
+
+
+
+
+ Oracle
+
+
+ InClauseLimit
+
+
+
+
+ JDBC
+
+
+ GetStringVal
+
+
+InClauseLimit:
+The maximum number of elements in an IN clause. OpenJPA
+works around cases where the limit is exceeded. Defaults to -1 meaning
+no limit.
+
+
+
+
+
+
+ connections
+
+
+ InitializationSQL
+
+
+
+
+ SQL
+
+
+ InitializationSQL
+
+
+InitializationSQL: A piece of SQL to issue against the
+database whenever a connection is retrieved from the DataSource
+.
+
+
+
+
+
+
+ joins
+
+
+ InnerJoinClause
+
+
+InnerJoinClause: The clause to use for an inner join.
+Defaults to "INNER JOIN".
+
+
+
+
+
+
+ DDL
+
+
+ IntegerTypeName
+
+
+IntegerTypeName: The overridden default column type for
+java.sql.Types.INTEGER. This is used only when the schema is
+generated by the mappingtool.
+
+
+
+
+
+
+ DDL
+
+
+ JavaObjectTypeName
+
+
+JavaObjectTypeName: The overridden default column type for
+java.sql.Types.JAVAOBJECT. This is used only when the schema
+is generated by the mappingtool.
+
+
+
+
+
+
+ joins
+
+
+ JoinSyntax
+
+
+JoinSyntax: The SQL join syntax to use in select statements.
+See .
+
+
+
+
+
+
+ persistent fields
+
+
+ automatic field values
+
+
+ LastGeneratedKeyQuery
+
+
+LastGeneratedKeyQuery: The query to issue to obtain the last
+automatically generated key for an auto-increment column. For example,
+"SELECT LAST_INSERT_ID()" for MySQL. This property is set
+automatically in the dictionary, and should not need to be overridden.
+
+
+
+
+
+
+ DDL
+
+
+ LongVarbinaryTypeName
+
+
+LongVarbinaryTypeName: The overridden default column type
+for java.sql.Types.LONGVARBINARY. This is used only when the
+schema is generated by the mappingtool.
+
+
+
+
+
+
+ DDL
+
+
+ LongVarcharTypeName
+
+
+LongVarcharTypeName: The overridden default column type for
+java.sql.Types.LONGVARCHAR. This is used only when the
+schema is generated by the mappingtool.
+
+
+
+
+
+
+ DDL
+
+
+ MaxAutoAssignNameLength
+
+
+MaxAutoAssignNameLength: Set this property to the maximum
+length of the sequence name used for auto-increment columns. Names longer than
+this value are truncated. Defaults to 31.
@@ -806,6 +1542,42 @@ column name. Defaults to 128.
a constraint name. Defaults to 128.
+
+
+
+
+ SQL
+
+
+ MaxEmbeddedBlobSize
+
+
+MaxEmbeddedBlobSize:
+When greater than -1, the maximum size of a BLOB value
+that can be sent directly to the database within an insert or update statement.
+Values whose size is greater than MaxEmbeddedBlobSize force
+OpenJPA to work around this limitation. A value of -1 means that there is
+no limitation. Defaults to -1.
+
+
+
+
+
+
+ SQL
+
+
+ MaxEmbeddedClobSize
+
+
+MaxEmbeddedClobSize:
+When greater than -1, the maximum size of a CLOB value
+that can be sent directly to the database within an insert or update statement.
+Values whose size is greater than MaxEmbeddedClobSize force
+OpenJPA to work around this limitation. A value of -1 means that there is
+no limitation. Defaults to -1.
+
+
@@ -828,21 +1600,6 @@ a constraint name. Defaults to 128.
index name. Defaults to 128.
-
-
-
-
- DDL
-
-
- MaxAutoAssignNameLength
-
-
-MaxAutoAssignNameLength: Set this property to the maximum
-length of name for sequences used for auto-increment columns. Names longer than
-this value are truncated. Defaults to 31.
-
-
@@ -857,312 +1614,79 @@ this value are truncated. Defaults to 31.
be placed on a single table. Defaults to no limit.
-
-
-
-
- foreign keys
-
-
- SupportsForeignKeys
-
-
-SupportsForeignKeys: Whether the database supports foreign
-keys. Defaults to true.
-
-
-
-
-
-
- SupportsTimestampNanos
-
-
-SupportsTimestampNanos: Whether the database supports nanoseconds with TIMESTAMP columns. Defaults to true.
-
-
-
-
-
-
- unique constraints
-
-
- SupportsUniqueConstraints
-
-
-SupportsUniqueConstraints: Whether the database supports
-unique constraints. Defaults to true.
-
-
-
-
-
-
- foreign keys
-
-
- SupportsDeferredConstraints
-
-
-SupportsDeferredConstraints: Whether the database supports
-deferred constraints. Defaults to true.
-
-
-
-
-
-
- foreign keys
-
-
- SupportsRestrictDeleteAction
-
-
-SupportsRestrictDeleteAction: Whether the database supports
-the RESTRICT foreign key delete action. Defaults to true.
-
-
-
-
-
-
- foreign keys
-
-
- SupportsCascadeDeleteAction
-
-
-SupportsCascadeDeleteAction: Whether the database supports
-the CASCADE foreign key delete action. Defaults to true.
-
-
-
-
-
-
- foreign keys
-
-
- SupportsNullDeleteAction
-
-
-SupportsNullDeleteAction: Whether the database supports the
-SET NULL foreign key delete action. Defaults to true.
-
-
-
-
-
-
- foreign keys
-
-
- SupportsDefaultDeleteAction
-
-
-SupportsDefaultDeleteAction: Whether the database supports
-the SET DEFAULT foreign key delete action. Defaults to true.
-
-
-
+
DDL
- SupportsAlterTableWithAddColumn
+ MaxTableNameLength
-SupportsAlterTableWithAddColumn: Whether the database
-supports adding a new column in an ALTER TABLE statement. Defaults to
-true.
+MaxTableNameLength: The maximum number of characters in a
+table name. Defaults to 128.
-
+
+
+
+
+ Sequence
+
+
+ NextSequenceQuery
+
+
+NextSequenceQuery: A SQL string for obtaining a native
+sequence value. May use a placeholder of {0} for the variable
+sequence name. Defaults to a database-appropriate value. For example,
+"SELECT {0}.NEXTVAL FROM DUAL" for Oracle.
+
+
+
DDL
- SupportsAlterTableWithDropColumn
+ NullTypeName
-SupportsAlterTableWithDropColumn: Whether the database
-supports dropping a column in an ALTER TABLE statement. Defaults to
-true.
+NullTypeName: The overridden default column type for
+java.sql.Types.NULL. This is used only when the schema is
+generated by the mappingtool.
-
+
- SQL
+ DDL
- ReservedWords
+ NumericTypeName
-ReservedWords: A comma-separated list of reserved words for
-this database, beyond the standard SQL92 keywords.
+NumericTypeName: The overridden default column type for
+java.sql.Types.NUMERIC. This is used only when the schema is
+generated by the mappingtool.
-
+
- SQL
+ DDL
- SelectWords
+ OtherTypeName
-SelectWords: A comma-separated list of keywords which may be
-used to start a SELECT statement for this database. If an application executes
-a native SQL statement which begins with SelectWords OpenJPA will treat the
-statement as a SELECT statement rather than an UPDATE statement.
-
-
-
-
-
-
- schema
-
-
- reflection
-
-
- SystemTables
-
-
-SystemTables: A comma-separated list of table names that
-should be ignored.
-
-
-
-
-
-
- schema
-
-
- reflection
-
-
- SystemSchemas
-
-
-SystemSchemas: A comma-separated list of schema names that
-should be ignored.
-
-
-
-
-
-
- schema
-
-
- reflection
-
-
- SchemaCase
-
-
-SchemaCase: The case to use when querying the database
-metadata about schema components. Defaults to making all names upper case.
-Available values are: upper, lower, preserve.
-
-
-
-
-
-
- connections
-
-
- ValidationSQL
-
-
-
-
- SQL
-
-
- ValidationSQL
-
-
-ValidationSQL: The SQL used to validate that a connection is
-still in a valid state. For example, " SELECT SYSDATE FROM DUAL
- " for Oracle.
-
-
-
-
-
-
- connections
-
-
- InitializationSQL
-
-
-
-
- SQL
-
-
- InitializationSQL
-
-
-InitializationSQL: A piece of SQL to issue against the
-database whenever a connection is retrieved from the DataSource
-.
-
-
-
-
-
-
- joins
-
-
- JoinSyntax
-
-
-JoinSyntax: The SQL join syntax to use in select statements.
-See .
-
-
-
-
-
-
- joins
-
-
- CrossJoinClause
-
-
-CrossJoinClause: The clause to use for a cross join
-(cartesian product). Defaults to CROSS JOIN.
-
-
-
-
-
-
- joins
-
-
- InnerJoinClause
-
-
-InnerJoinClause: The clause to use for an inner join.
-Defaults to INNER JOIN.
+OtherTypeName: The overridden default column type for
+java.sql.Types.OTHER. This is used only when the schema is
+generated by the mappingtool.
@@ -1176,356 +1700,74 @@ Defaults to INNER JOIN.
OuterJoinClause: The clause to use for an left outer join.
-Defaults to LEFT OUTER JOIN.
+Defaults to "LEFT OUTER JOIN".
-
-
-
-
- joins
-
-
- RequiresConditionForCrossJoin
-
-
-RequiresConditionForCrossJoin: Some databases require that
-there always be a conditional statement for a cross join. If set, this parameter
-ensures that there will always be some condition to the join clause.
-
-
-
-
-
-
- SQL
-
-
- ToUpperCaseFunction
-
-
-ToUpperCaseFunction: SQL function call for for converting a
-string to upper case. Use the token {0} to represent the
-argument.
-
-
-
-
-
-
- SQL
-
-
- ToLowerCaseFunction
-
-
-ToLowerCaseFunction: Name of the SQL function for converting
-a string to lower case. Use the token {0} to represent the
-argument.
-
-
-
-
-
-
- SQL
-
-
- StringLengthFunction
-
-
-StringLengthFunction: Name of the SQL function for getting
-the length of a string. Use the token {0} to represent the
-argument.
-
-
-
-
-
-
- SQL
-
-
- SubstringFunctionName
-
-
-SubstringFunctionName: Name of the SQL function for getting
-the substring of a string.
-
-
-
-
-
-
- SQL
-
-
- DistinctCountColumnSeparator
-
-
-DistinctCountColumnSeparator: The string the database uses
-to delimit between column expressions in a SELECT COUNT(DISTINCT
-column-list) clause. Defaults to null for most databases, meaning that
-multiple columns in a distinct COUNT clause are not supported.
-
-
-
-
-
-
- SQL
-
-
- ForUpdateClause
-
-
-
-
- locking
-
-
- ForUpdateClause
-
-
-ForUpdateClause: The clause to append to SELECT
- statements to issue queries that obtain pessimistic locks. Defaults
-to FOR UPDATE.
-
-
-
-
-
-
- SQL
-
-
- TableForUpdateClause
-
-
-
-
- locking
-
-
- TableForUpdateClause
-
-
-TableForUpdateClause: The clause to append to the end of
-each table alias in queries that obtain pessimistic locks. Defaults to null.
-
-
-
-
-
-
- locking
-
-
- SupportsSelectForUpdate
-
-
-SupportsSelectForUpdate: If true, then the database supports
-SELECT statements with a pessimistic locking clause. Defaults
-to true.
-
-
-
-
-
-
- locking
-
-
- SupportsLockingWithDistinctClause
-
-
-SupportsLockingWithDistinctClause: If true, then the
-database supports FOR UPDATE select clauses with
-DISTINCT clauses.
-
-
-
-
-
-
- locking
-
-
- SupportsLockingWithOuterJoin
-
-
-SupportsLockingWithOuterJoin: If true, then the database
-supports FOR UPDATE select clauses with outer join queries.
-
-
-
-
-
-
- locking
-
-
- SupportsLockingWithInnerJoin
-
-
-SupportsLockingWithInnerJoin: If true, then the database
-supports FOR UPDATE select clauses with inner join queries.
-
-
-
-
-
-
- locking
-
-
- SupportsLockingWithMultipleTables
-
-
-SupportsLockingWithMultipleTables: If true, then the
-database supports FOR UPDATE select clauses that select from
-multiple tables.
-
-
-
-
-
-
- locking
-
-
- SupportsLockingWithOrderClause
-
-
-SupportsLockingWithOrderClause: If true, then the database
-supports FOR UPDATE select clauses with ORDER BY
- clauses.
-
-
-
-
-
-
- locking
-
-
- SupportsLockingWithSelectRange
-
-
-SupportsLockingWithSelectRange: If true, then the database
-supports FOR UPDATE select clauses with queries that select a
-range of data using LIMIT, TOP or the
-database equivalent. Defaults to true.
-
-
-
-
-
-
- locking
-
-
- SimulateLocking
-
-
-SimulateLocking: Some databases do not support pessimistic
-locking, which will result in an exception when you attempt a pessimistic
-transaction. Setting this property to true bypasses the
-locking check to allow pessimistic transactions even on databases that do not
-support locking. Defaults to false.
-
-
-
+
JDBC
- QueryTimeout
+ Platform
-
- SupportsQueryTimeout
-
-SupportsQueryTimeout: If true, then the JDBC driver supports
-calls to java.sql.Statement.setQueryTimeout.
+Platform:
+The name of the database that this dictionary targets.
+Defaults to "Generic", but all dictionaries override this
+value.
-
-
-
-
- aggregates
-
-
- having
-
-
- SupportsHaving
-
-
-SupportsHaving: Whether this database supports HAVING
-clauses in selects.
-
-
-
-
-
-
- Query
-
-
- result range
-
-
- SupportsSelectStartIndex
-
-
-SupportsSelectStartIndex: Whether this database can create a
-select that skips the first N results.
-
-
-
-
-
-
- Query
-
-
- result range
-
-
- SupportsSelectEndIndex
-
-
-SupportsSelectEndIndex: Whether this database can create a
-select that is limited to the first N results.
-
-
-
+
SQL
- SupportsSubselect
+ RangePosition
+RangePosition:
+Indicates where to specify in the SQL select statement the range, if any,
+of the result rows to be returned.
+When limiting the number of returned result rows to a subset of all those
+that satisfy the query's conditions, the position of the range clause
+varies by database.
+Defaults to 0, meaning that the range
+is expressed at the end of the select statement but before any locking clause.
+See the RANGE_XXX constants defined in DBDictionary.
+
+
+
+
- JPQL
+ DDL
- subselects
+ RealTypeName
-
- SupportsSubselect
-
-SupportsSubselect: Whether this database supports subselects
-in queries.
+RealTypeName: The overridden default column type for
+java.sql.Types.REAL. This is used only when the schema is
+generated by the mappingtool.
+
+
+
+
+
+
+ DDL
+
+
+ RefTypeName
+
+
+RefTypeName: The overridden default column type for
+java.sql.Types.REF. This is used only when the schema is generated by
+the mappingtool.
@@ -1549,15 +1791,249 @@ in queries.
RequiresAliasForSubselect
-RequiresAliasForSubselect: If true, then the database
+RequiresAliasForSubselect: When true, the database
requires that subselects in a FROM clause be assigned an alias.
-
+
-SupportsMultipleNontransactionalResultSets: If true, then a
-nontransactional connection is capable of having multiple open
-ResultSet instances.
+
+
+ schema
+
+
+ reflection
+
+
+ RequiresAutoCommitForMetaData
+
+
+RequiresAutoCommitForMetadata: When true, the JDBC driver
+requires that autocommit be enabled before any schema interrogation operations
+can take place.
+
+
+
+
+
+
+ SQL
+
+
+ RequiresCastForComparisons
+
+
+RequiresCastForComparisons:
+When true, comparisons of two values of different types or
+of two literals requires a cast in the generated SQL.
+Defaults to false.
+
+
+
+
+
+
+ SQL
+
+
+ RequiresCastForMathFunctions
+
+
+RequiresCastForMathFunctions:
+When true, math operations on two values of different types or
+on two literals requires a cast in the generated SQL.
+Defaults to false.
+
+
+
+
+
+
+ joins
+
+
+ RequiresConditionForCrossJoin
+
+
+RequiresConditionForCrossJoin: Some databases require that
+there always be a conditional statement for a cross join. If set, this parameter
+ensures that there will always be some condition to the join clause.
+
+
+
+
+
+
+ SQL
+
+
+ RequiresTargetForDelete
+
+
+RequiresTargetForDelete:
+When true, the database requires a target for delete statements. Defaults
+to false.
+
+
+
+
+
+
+ SQL
+
+
+ ReservedWords
+
+
+ReservedWords: A comma-separated list of reserved words for
+this database, beyond the standard SQL92 keywords.
+
+
+
+
+
+
+ schema
+
+
+ reflection
+
+
+ SchemaCase
+
+
+SchemaCase: The case to use when querying the database
+metadata about schema components. Defaults to making all names upper case.
+Available values are: upper, lower, preserve.
+
+
+
+
+
+
+ SQL
+
+
+ SearchStringEscape
+
+
+SearchStringEscape:
+The default escape character used when generating SQL LIKE
+clauses. The escape character is used to escape the wildcard meaning of the
+_ and % characters.
+Note: since JPQL provides the ability to define the escape character in
+the query, this setting is primarily used when translating other query
+languages, such as JDOQL. Defaults to "\\"
+(a single backslash in Java speak).
+
+
+
+
+
+
+ SQL
+
+
+ SelectWords
+
+
+SelectWords: A comma-separated list of keywords which may be
+used to start a SELECT statement for this database. If an application executes
+a native SQL statement which begins with SelectWords OpenJPA will treat the
+statement as a SELECT statement rather than an UPDATE statement.
+
+
+
+
+
+
+ schema
+
+
+ reflection
+
+
+ SequenceNameSQL
+
+
+SequenceNameSQL:
+Additional phrasing to use with SequenceSQL.
+Defaults to null.
+
+
+
+
+
+
+ schema
+
+
+ reflection
+
+
+ SequenceSQL
+
+
+SequenceSQL:
+General structure of the SQL query to use when interrogating the database
+for sequence names.
+As there is no standard way to obtain sequence names,
+it defaults to null.
+
+
+
+
+
+
+
+ schema
+
+
+ reflection
+
+
+ SequenceSchemaSQL
+
+
+SequenceSchemaSQL:
+Additional phrasing to use with SequenceSQL.
+Defaults to null.
+
+
+
+
+
+
+ locking
+
+
+ SimulateLocking
+
+
+SimulateLocking: Some databases do not support pessimistic
+locking, which will result in an exception when you attempt a
+transaction while using the pessimistic lock manager.
+Setting this property to true suppresses the
+locking of rows in the database, thereby allowing pessimistic transactions
+even on databases that do not support locking. At the same time, setting this
+property to true means that you do not obtain the semantics
+of a pessimistic
+transaction with the database. Defaults to false.
+
+
+
+
+
+
+ DDL
+
+
+ SmallintTypeName
+
+
+SmallintTypeName: The overridden default column type for
+java.sql.Types.SMALLINT. This is used only when the schema
+is generated by the mappingtool.
@@ -1570,31 +2046,12 @@ ResultSet instances.
StorageLimitationsFatal
-StorageLimitationsFatal: If true, then any data
+StorageLimitationsFatal: When true, any data
truncation/rounding that is performed by the dictionary in order to store a
value in the database will be treated as a fatal error, rather than just issuing
a warning.
-
-
-
-
- persistent fields
-
-
- StoreLargeNumbersAsStrings
-
-
-StoreLargeNumbersAsStrings: Many databases have limitations
-on the number of digits that can be stored in a numeric field (for example,
-Oracle can only store 38 digits). For applications that operate on very large
-BigInteger and BigDecimal values,
-it may be necessary to store these objects as string fields rather than the
-database's numeric type. Note that this may prevent meaningful numeric queries
-from being executed against the database. Defaults to false.
-
-
@@ -1610,439 +2067,41 @@ from being executed against the database. Defaults to false.
values rather than numbers. Defaults to true.
-
+
- BLOB
+ persistent fields
- UseGetBytesForBlobs
+ StoreLargeNumbersAsStrings
-UseGetBytesForBlobs: If true, then
-ResultSet.getBytes will be used to obtain blob data rather than
-ResultSet.getBinaryStream.
+StoreLargeNumbersAsStrings: When true, the dictionary
+prefers to store Java fields of
+type BigInteger and BigDecimal)
+as string values in the database. Likewise, the dictionary will instruct
+the mapping tool to map these Java types to character columns.
+Because some databases have limitations on the number of digits that can
+be stored in a numeric column (for example, Oracle can only store 38
+digits), this option may be necessary for some applications.
+Note that this option may prevent OpenJPA from executing meaningful numeric
+queries against the columns. Defaults to false.
-
+
- BLOB
+ SQL
- UseGetObjectForBlobs
+ StringLengthFunction
-UseGetObjectForBlobs: If true, then
-ResultSet.getObject will be used to obtain blob data rather than
-ResultSet.getBinaryStream.
-
-
-
-
-
-
- BLOB
-
-
- UseSetBytesForBlobs
-
-
-UseSetBytesForBlobs: If true, then
-PreparedStatement.setBytes will be used to set blob data, rather
-than PreparedStatement.setBinaryStream.
-
-
-
-
-
-
- CLOB
-
-
- UseGetStringForClobs
-
-
-UseGetStringForClobs: If true, then
-ResultSet.getString will be used to obtain clob data rather than
-ResultSet.getCharacterStream.
-
-
-
-
-
-
- CLOB
-
-
- UseSetStringForClobs
-
-
-UseSetStringForClobs: If true, then
-PreparedStatement.setString will be used to set clob data, rather
-than PreparedStatement.setCharacterStream.
-
-
-
-
-
-
- DDL
-
-
- CharacterColumnSize
-
-
-CharacterColumnSize: The default size of varchar
- and char columns. Typically 255.
-
-
-
-
-
-
- DDL
-
-
- ArrayTypeName
-
-
-ArrayTypeName: The overridden default column type for
-java.sql.Types.ARRAY. This is only used when the schema is
-generated by the mappingtool.
-
-
-
-
-
-
- DDL
-
-
- BigintTypeName
-
-
-BigintTypeName: The overridden default column type for
-java.sql.Types.BIGINT. This is only used when the schema is
-generated by the mappingtool.
-
-
-
-
-
-
- DDL
-
-
- BinaryTypeName
-
-
-BinaryTypeName: The overridden default column type for
-java.sql.Types.BINARY. This is only used when the schema is
-generated by the mappingtool.
-
-
-
-
-
-
- DDL
-
-
- BitTypeName
-
-
-BitTypeName: The overridden default column type for
-java.sql.Types.BIT. This is only used when the schema is generated by
-the mappingtool.
-
-
-
-
-
-
- DDL
-
-
- BlobTypeName
-
-
-
-
- BLOB
-
-
- BlobTypeName
-
-
-BlobTypeName: The overridden default column type for
-java.sql.Types.BLOB. This is only used when the schema is
-generated by the mappingtool.
-
-
-
-
-
-
- DDL
-
-
- CharTypeName
-
-
-CharTypeName: The overridden default column type for
-java.sql.Types.CHAR. This is only used when the schema is
-generated by the mappingtool.
-
-
-
-
-
-
- DDL
-
-
- ClobTypeName
-
-
-
-
- CLOB
-
-
- ClobTypeName
-
-
-ClobTypeName: The overridden default column type for
-java.sql.Types.CLOB. This is only used when the schema is
-generated by the mappingtool.
-
-
-
-
-
-
- DDL
-
-
- DateTypeName
-
-
-DateTypeName: The overridden default column type for
-java.sql.Types.DATE. This is only used when the schema is
-generated by the mappingtool.
-
-
-
-
-
-
- DDL
-
-
- DecimalTypeName
-
-
-DecimalTypeName: The overridden default column type for
-java.sql.Types.DECIMAL. This is only used when the schema is
-generated by the mappingtool.
-
-
-
-
-
-
- DDL
-
-
- DistinctTypeName
-
-
-DistinctTypeName: The overridden default column type for
-java.sql.Types.DISTINCT. This is only used when the schema
-is generated by the mappingtool.
-
-
-
-
-
-
- DDL
-
-
- DoubleTypeName
-
-
-DoubleTypeName: The overridden default column type for
-java.sql.Types.DOUBLE. This is only used when the schema is
-generated by the mappingtool.
-
-
-
-
-
-
- DDL
-
-
- FloatTypeName
-
-
-FloatTypeName: The overridden default column type for
-java.sql.Types.FLOAT. This is only used when the schema is
-generated by the mappingtool.
-
-
-
-
-
-
- DDL
-
-
- IntegerTypeName
-
-
-IntegerTypeName: The overridden default column type for
-java.sql.Types.INTEGER. This is only used when the schema is
-generated by the mappingtool.
-
-
-
-
-
-
- DDL
-
-
- JavaObjectTypeName
-
-
-JavaObjectTypeName: The overridden default column type for
-java.sql.Types.JAVAOBJECT. This is only used when the schema
-is generated by the mappingtool.
-
-
-
-
-
-
- DDL
-
-
- LongVarbinaryTypeName
-
-
-LongVarbinaryTypeName: The overridden default column type
-for java.sql.Types.LONGVARBINARY. This is only used when the
-schema is generated by the mappingtool.
-
-
-
-
-
-
- DDL
-
-
- LongVarcharTypeName
-
-
-LongVarcharTypeName: The overridden default column type for
-java.sql.Types.LONGVARCHAR. This is only used when the
-schema is generated by the mappingtool.
-
-
-
-
-
-
- DDL
-
-
- NullTypeName
-
-
-NullTypeName: The overridden default column type for
-java.sql.Types.NULL. This is only used when the schema is
-generated by the mappingtool.
-
-
-
-
-
-
- DDL
-
-
- NumericTypeName
-
-
-NumericTypeName: The overridden default column type for
-java.sql.Types.NUMERIC. This is only used when the schema is
-generated by the mappingtool.
-
-
-
-
-
-
- DDL
-
-
- OtherTypeName
-
-
-OtherTypeName: The overridden default column type for
-java.sql.Types.OTHER. This is only used when the schema is
-generated by the mappingtool.
-
-
-
-
-
-
- DDL
-
-
- RealTypeName
-
-
-RealTypeName: The overridden default column type for
-java.sql.Types.REAL. This is only used when the schema is
-generated by the mappingtool.
-
-
-
-
-
-
- DDL
-
-
- RefTypeName
-
-
-RefTypeName: The overridden default column type for
-java.sql.Types.REF. This is only used when the schema is generated by
-the mappingtool.
-
-
-
-
-
-
- DDL
-
-
- SmallintTypeName
-
-
-SmallintTypeName: The overridden default column type for
-java.sql.Types.SMALLINT. This is only used when the schema
-is generated by the mappingtool.
+StringLengthFunction: Name of the SQL function for getting
+the length of a string. Use the token {0} to represent the
+argument.
@@ -2056,98 +2115,684 @@ is generated by the mappingtool.
StructTypeName: The overridden default column type for
-java.sql.Types.STRUCT. This is only used when the schema is
+java.sql.Types.STRUCT. This is used only when the schema is
generated by the mappingtool.
-
+
+
+
+
+ SQL
+
+
+ SubstringFunctionName
+
+
+SubstringFunctionName: Name of the SQL function for getting
+the substring of a string.
+
+
+
DDL
- TimeTypeName
+ SupportsAlterTableWithAddColumn
-TimeTypeName: The overridden default column type for
-java.sql.Types.TIME. This is only used when the schema is
-generated by the mappingtool.
+SupportsAlterTableWithAddColumn: When true, the database
+supports adding a new column in an ALTER TABLE statement.
+Defaults to true.
-
+
DDL
- TimestampTypeName
+ SupportsAlterTableWithDropColumn
-TimestampTypeName: The overridden default column type for
-java.sql.Types.TIMESTAMP. This is only used when the schema
-is generated by the mappingtool.
+SupportsAlterTableWithDropColumn: When true, the database
+supports dropping a column in an ALTER TABLE statement.
+Defaults to true.
-
+
+
+
+
+ SQL
+
+
+ SupportsAutoAssign
+
+
+SupportsAutoAssign:
+When true, the database supports auto-assign columns, where the value of
+column is assigned upon insertion of the row into the database.
+Defaults to false.
+
+
+
+
+
+
+ foreign keys
+
+
+ SupportsCascadeDeleteAction
+
+
+SupportsCascadeDeleteAction: When true, the database supports
+the CASCADE delete action on foreign keys.
+Defaults to true.
+
+
+
+
+
+
+ foreign keys
+
+
+ SupportsCascadeUpdateAction
+
+
+SupportsCascadeUpdateAction:
+When true, the database supports the CASCADE
+update action on foreign keys. Defaults to true.
+
+
+
DDL
- TinyintTypeName
+ SupportsComments
-TinyintTypeName: The overridden default column type for
-java.sql.Types.TINYINT. This is only used when the schema is
-generated by the mappingtool.
+SupportsComments:
+When true, comments can be associated with the table in the table creation
+statement. Defaults to false.
-
+
- DDL
+ SQL
- VarbinaryTypeName
+ SupportsCorrelatedSubselect
-VarbinaryTypeName: The overridden default column type for
-java.sql.Types.VARBINARY. This is only used when the schema
-is generated by the mappingtool.
+SupportsCorrelatedSubselect:
+When true, the database supports correlated subselects. Correlated
+subselects are select statements nested within select statements that
+refers to a column in the outer select statement. For performance
+reasons, correlated subselects are generally a last resort.
+Defaults to true.
-
+
- DDL
+ foreign keys
- VarcharTypeName
+ SupportsDefaultDeleteAction
-VarcharTypeName: The overridden default column type for
-java.sql.Types.VARCHAR. This is only used when the schema is
-generated by the mappingtool.
+SupportsDefaultDeleteAction: When true, the database supports
+the SET DEFAULT delete action on foreign keys.
+Defaults to true.
-
+
+
+
+
+ foreign keys
+
+
+ SupportsDefaultUpdateAction
+
+
+SupportsDefaultUpdateAction:
+When true, the database supports the SET DEFAULT update
+action on foreign keys. Defaults to true.
+
+
+
+
+
+
+ foreign keys
+
+
+ SupportsDeferredConstraints
+
+
+SupportsDeferredConstraints: When true, the database
+supports deferred constraints. The
+database supports deferred constraints by checking for constraint
+violations when the transaction commits, rather than checking for
+violations immediately after receiving each SQL statement within the
+transaction. Defaults to true.
+
+
+
+
+
+
+ foreign keys
+
+
+ SupportsForeignKeys
+
+
+SupportsForeignKeys: When true, the database supports foreign
+keys. Defaults to true.
+
+
+
+
+
+
+ aggregates
+
+
+ having
+
+
+ SupportsHaving
+
+
+SupportsHaving: When true, the database supports HAVING
+clauses in selects.
+
+
+
+
+
+
+ locking
+
+
+ SupportsLockingWithDistinctClause
+
+
+SupportsLockingWithDistinctClause: When true, the
+database supports FOR UPDATE select clauses with
+DISTINCT clauses.
+
+
+
+
+
+
+ locking
+
+
+ SupportsLockingWithInnerJoin
+
+
+SupportsLockingWithInnerJoin: When true, the database
+supports FOR UPDATE select clauses with inner join queries.
+
+
+
+
+
+
+ locking
+
+
+ SupportsLockingWithMultipleTables
+
+
+SupportsLockingWithMultipleTables: When true, the
+database supports FOR UPDATE select clauses that select from
+multiple tables.
+
+
+
+
+
+
+ locking
+
+
+ SupportsLockingWithOrderClause
+
+
+SupportsLockingWithOrderClause: When true, the database
+supports FOR UPDATE select clauses with ORDER BY
+ clauses.
+
+
+
+
+
+
+ locking
+
+
+ SupportsLockingWithOuterJoin
+
+
+SupportsLockingWithOuterJoin: When true, the database
+supports FOR UPDATE select clauses with outer join queries.
+
+
+
+
+
+
+ locking
+
+
+ SupportsLockingWithSelectRange
+
+
+SupportsLockingWithSelectRange: When true, the database
+supports FOR UPDATE select clauses with queries that select a
+range of data using LIMIT, TOP or the
+database equivalent. Defaults to true.
+
+
+
+
+
+
+ SQL
+
+
+ SupportsModOperator
+
+
+SupportsModOperator:
+When true, the database supports the modulus operator (%)
+instead of the MOD function.
+Defaults to false.
+
+
+
+
+SupportsMultipleNontransactionalResultSets: When true, a
+nontransactional connection is capable of having multiple open
+ResultSet instances.
+
+
+
+
+
+
+ foreign keys
+
+
+ SupportsNullDeleteAction
+
+
+SupportsNullDeleteAction: When true, the database supports
+the SET NULL delete action on foreign keys.
+Defaults to true.
+
+
+
schema
- UseSchemaName
+ reflection
+
+
+ SupportsNullTableForGetColumns
+
+
+SupportsNullTableForGetColumns: When true, the database
+supports passing a null parameter to
+DatabaseMetaData.getColumns as an optimization to get information
+about all the tables. Defaults to true.
+
+
+
+
+
+
+ schema
+
+
+ reflection
+
+
+ SupportsNullTableForGetImportedKeys
+
+
+SupportsNullTableForGetImportedKeys: When true, the
+database supports passing a null parameter to
+DatabaseMetaData.getImportedKeys as an optimization to get
+information about all the tables. Defaults to false.
+
+
+
+
+
+
+ schema
+
+
+ reflection
+
+
+ SupportsNullTableForGetIndexInfo
+
+
+SupportsNullTableForGetIndexInfo: When true, the database
+supports passing a null parameter to
+DatabaseMetaData.getIndexInfo as an optimization to get information
+about all the tables. Defaults to false.
+
+
+
+
+
+
+ schema
+
+
+ reflection
+
+
+ SupportsNullTableForGetPrimaryKeys
+
+
+SupportsNullTableForGetPrimaryKeys: When true, the
+database supports passing a null parameter to
+DatabaseMetaData.getPrimaryKeys as an optimization to get
+information about all the tables. Defaults to false.
+
+
+
+
+
+
+ foreign keys
+
+
+ SupportsNullUpdateAction
-UseSchemaName: If false, then avoid
-including the schema name in table name references. Defaults to true
-.
+SupportsNullUpdateAction:
+When true, the database supports the SET NULL update
+action on foreign keys. Defaults to true.
+
+
+
+
+
+
+ JDBC
+
+
+ QueryTimeout
+
+
+ SupportsQueryTimeout
+
+
+SupportsQueryTimeout: When true, the JDBC driver supports
+calls to java.sql.Statement.setQueryTimeout.
+
+
+
+
+
+
+ foreign keys
+
+
+ SupportsRestrictDeleteAction
+
+
+SupportsRestrictDeleteAction: When true, the database
+supports the RESTRICT delete action on foreign keys.
+Defaults to true.
+
+
+
+
+
+
+ foreign keys
+
+
+ SupportsRestrictUpdateAction
+
+
+SupportsRestrictUpdateAction:
+When true, the database supports the RESTRICT update
+action on foreign keys. Defaults to true.
+
+
+
+
+
+
+ schema
+
+
+ reflection
+
+
+ SupportsSchemaForGetColumns
+
+
+SupportsSchemaForGetColumns: When false, the database
+driver does not support using the schema name for schema reflection on column
+names.
+
+
+
+
+
+
+ schema
+
+
+ reflection
+
+
+ SupportsSchemaForGetTables
+
+
+SupportsSchemaForGetTables: If false, then the database
+driver does not support using the schema name for schema reflection on table
+names.
+
+
+
+
+
+
+ Query
+
+
+ result range
+
+
+ SupportsSelectEndIndex
+
+
+SupportsSelectEndIndex: When true, the database can create a
+select that is limited to the first N results.
+
+
+
+
+
+
+ locking
+
+
+ SupportsSelectForUpdate
+
+
+SupportsSelectForUpdate: When true, the database supports
+SELECT statements with a pessimistic locking
+(FOR UPDATE) clause. Defaults to true.
+
+
+
+
+
+
+ Query
+
+
+ result range
+
+
+ SupportsSelectStartIndex
+
+
+SupportsSelectStartIndex: When true, the database can create a
+select that skips the first N results.
+
+
+
+
+
+
+ SQL
+
+
+ SupportsSubselect
+
+
+
+
+ JPQL
+
+
+ subselects
+
+
+ SupportsSubselect
+
+
+SupportsSubselect: When true, the database supports subselects
+in queries.
+
+
+
+
+
+
+ SupportsTimestampNanos
+
+
+SupportsTimestampNanos: When true, the database supports
+nanoseconds with TIMESTAMP columns.
+Defaults to true.
+
+
+
+
+
+
+ unique constraints
+
+
+ SupportsUniqueConstraints
+
+
+SupportsUniqueConstraints: When true, the database supports
+unique constraints. Defaults to true.
+
+
+
+
+
+
+ DDL
+
+
+ SupportsXMLColumn
+
+
+SupportsXMLColumn:
+When true, the database supports an XML column type. See
+
+for information on using this capability. Defaults to false.
+
+
+
+
+
+
+ schema
+
+
+ reflection
+
+
+ SystemSchemas
+
+
+SystemSchemas: A comma-separated list of schema names that
+should be ignored.
+
+
+
+
+
+
+ schema
+
+
+ reflection
+
+
+ SystemTables
+
+
+SystemTables: A comma-separated list of table names that
+should be ignored.
+
+
+
+
+
+
+ SQL
+
+
+ TableForUpdateClause
+
+
+
+
+ locking
+
+
+ TableForUpdateClause
+
+
+TableForUpdateClause: The clause to append to the end of
+each table alias in queries that obtain pessimistic locks.
+Defaults to null.
@@ -2169,116 +2814,139 @@ java.sql.DatabaseMetaData.getTableInfo JDBC method. An example is:
"TABLE,VIEW,ALIAS". Defaults to "TABLE".
-
+
- schema
+ DDL
- reflection
+ TimeTypeName
-
- SupportsSchemaForGetTables
-
-SupportsSchemaForGetTables: If false, then the database
-driver does not support using the schema name for schema reflection on table
-names.
+TimeTypeName: The overridden default column type for
+java.sql.Types.TIME. This is used only when the schema is
+generated by the mappingtool.
-
+
- schema
+ DDL
- reflection
+ TimestampTypeName
-
- SupportsSchemaForGetColumns
-
-SupportsSchemaForGetColumns: If false, then the database
-driver does not support using the schema name for schema reflection on column
-names.
+TimestampTypeName: The overridden default column type for
+java.sql.Types.TIMESTAMP. This is used only when the schema
+is generated by the mappingtool.
-
+
- schema
+ DDL
- reflection
+ TinyintTypeName
-
- SupportsNullTableForGetColumns
-
-SupportsNullTableForGetColumns: If true, then the database
-supports passing a null parameter to
-DatabaseMetaData.getColumns as an optimization to get information
-about all the tables. Defaults to true.
+TinyintTypeName: The overridden default column type for
+java.sql.Types.TINYINT. This is used only when the schema is
+generated by the mappingtool.
-
+
- schema
+ SQL
- reflection
+ ToLowerCaseFunction
-
- SupportsNullTableForGetPrimaryKeys
-
-SupportsNullTableForGetPrimaryKeys: If true, then the
-database supports passing a null parameter to
-DatabaseMetaData.getPrimaryKeys as an optimization to get
-information about all the tables. Defaults to false.
+ToLowerCaseFunction: Name of the SQL function for converting
+a string to lower case. Use the token {0} to represent the
+argument.
-
+
- schema
+ SQL
- reflection
+ ToUpperCaseFunction
-
- SupportsNullTableForGetIndexInfo
-
-SupportsNullTableForGetIndexInfo: If true, then the database
-supports passing a null parameter to
-DatabaseMetaData.getIndexInfo as an optimization to get information
-about all the tables. Defaults to false.
+ToUpperCaseFunction: SQL function call for for converting a
+string to upper case. Use the token {0} to represent the
+argument.
-
+
- schema
+ SQL
- reflection
+ TrimBothFunction
-
- SupportsNullTableForGetImportedKeys
-
-SupportsNullTableForGetImportedKeys: If true, then the
-database supports passing a null parameter to
-DatabaseMetaData.getImportedKeys as an optimization to get
-information about all the tables. Defaults to false.
+TrimBothFunction:
+The SQL function call to trim any number of a particular character
+from both the start and end of a string.
+Note: some databases do not support specifying the character in which
+case only spaces or whitespace can be trimmed.
+Use the token {1} when possible to represent the character,
+and the token {0} to represent the string.
+Defaults to "TRIM(BOTH {1} FROM {0})".
+
+
+
+
+
+
+ SQL
+
+
+ TrimLeadingFunction
+
+
+TrimLeadingFunction:
+The SQL function call to trim any number of a particular character
+from the start of a string.
+Note: some databases do not support specifying the character in which
+case only spaces or whitespace can be trimmed.
+Use the token {1} when possible to represent the character,
+and the token {0} to represent the string.
+Defaults to "TRIM(LEADING {1} FROM {0})".
+
+
+
+
+
+
+ SQL
+
+
+ TrimTrailingFunction
+
+
+TrimTrailingFunction:
+The SQL function call to trim any number of a particular character
+from the end of a string.
+Note: some databases do not support specifying the character in which
+case only spaces or whitespace can be trimmed.
+Use the token {1} when possible to represent the character,
+and the token {0} to represent the string.
+Defaults to "TRIM(TRAILING {1} FROM {0})".
@@ -2294,144 +2962,174 @@ information about all the tables. Defaults to false.
UseGetBestRowIdentifierForPrimaryKeys
-UseGetBestRowIdentifierForPrimaryKeys: If true, then
+UseGetBestRowIdentifierForPrimaryKeys: When true,
metadata queries will use DatabaseMetaData.getBestRowIdentifier
to obtain information about primary keys, rather than
DatabaseMetaData.getPrimaryKeys.
-
-
-
-
- schema
-
-
- reflection
-
-
- RequiresAutoCommitForMetaData
-
-
-RequiresAutoCommitForMetadata: If true, then the JDBC driver
-requires that autocommit be enabled before any schema interrogation operations
-can take place.
-
-
-
-
-
-
- persistent fields
-
-
- automatic field values
-
-
- AutoAssignClause
-
-
-AutoAssignClause: The column definition clause to append to
-a creation statement. For example, " AUTO_INCREMENT " for
-MySQL. This property is set automatically in the dictionary, and should not need
-to be overridden, and is only used when the schema is generated using the
-mappingtool.
-
-
-
-
-
-
- DDL
-
-
- AutoAssignTypeName
-
-
-
-
- persistent fields
-
-
- automatic field values
-
-
- AutoAssignTypeName
-
-
-AutoAssignTypeName: The column type name for auto-increment
-columns. For example, " SERIAL " for PostgreSQL. This
-property is set automatically in the dictionary, and should not need to be
-overridden, and is only used when the schema is generated using the
-mappingtool.
-
-
-
-
-
-
- persistent fields
-
-
- automatic field values
-
-
- LastGeneratedKeyQuery
-
-
-LastGeneratedKeyQuery: The query to issue to obtain the last
-automatically generated key for an auto-increment column. For example, "
-select @@identity " for Sybase. This property is set
-automatically in the dictionary, and should not need to be overridden.
-
-
-
-
-
-
- Sequence
-
-
- NextSequenceQuery
-
-
-NextSequenceQuery: A SQL string for obtaining a native
-sequence value. May use a placeholder of {0} for the variable
-sequence name. Defaults to a database-appropriate value.
-
-
-
+
BLOB
- BlobBufferSize
+ UseGetBytesForBlobs
-BlobBufferSize: This property establishes the buffer size in
-the INSERT/UPDATE operations with an
-java.io.InputStreamThis is only used with OpenJPA's
-. Defaults to 50000.
+UseGetBytesForBlobs: When true,
+ResultSet.getBytes will be used to obtain blob data rather than
+ResultSet.getBinaryStream.
-
+
+
+
+
+ BLOB
+
+
+ UseGetObjectForBlobs
+
+
+UseGetObjectForBlobs: When true,
+ResultSet.getObject will be used to obtain blob data rather than
+ResultSet.getBinaryStream.
+
+
+
CLOB
- ClobBufferSize
+ UseGetStringForClobs
-ClobBufferSize: This property establish the buffer size in
-the INSERT/UPDATE operations with a
-java.io.ReaderThis is only used with OpenJPA's
-. Defaults to 50000.
+UseGetStringForClobs: When true,
+ResultSet.getString will be used to obtain clob data rather than
+ResultSet.getCharacterStream.
+
+
+
+
+ schema
+
+
+ UseSchemaName
+
+
+UseSchemaName: If false, then avoid
+including the schema name in table name references. Defaults to true
+.
+
+
+
+
+
+
+ BLOB
+
+
+ UseSetBytesForBlobs
+
+
+UseSetBytesForBlobs: When true,
+PreparedStatement.setBytes will be used to set blob data, rather
+than PreparedStatement.setBinaryStream.
+
+
+
+
+
+
+ CLOB
+
+
+ UseSetStringForClobs
+
+
+UseSetStringForClobs: When true,
+PreparedStatement.setString will be used to set clob data, rather
+than PreparedStatement.setCharacterStream.
+
+
+
+
+
+
+ connections
+
+
+ ValidationSQL
+
+
+
+
+ SQL
+
+
+ ValidationSQL
+
+
+ValidationSQL: The SQL used to validate that a connection is
+still in a valid state. For example, "SELECT SYSDATE FROM DUAL"
+ for Oracle.
+
+
+
+
+
+
+ DDL
+
+
+ VarbinaryTypeName
+
+
+VarbinaryTypeName: The overridden default column type for
+java.sql.Types.VARBINARY. This is used only when the schema
+is generated by the mappingtool.
+
+
+
+
+
+
+ DDL
+
+
+ VarcharTypeName
+
+
+VarcharTypeName: The overridden default column type for
+java.sql.Types.VARCHAR. This is used only when the schema is
+generated by the mappingtool.
+
+
+
+
+
+
+ DDL
+
+
+ XmlTypeName
+
+
+XmlTypeName:
+The column type name for XML columns. This
+property is set automatically in the dictionary and should not need to be
+overridden. It is used only when the schema is generated using the
+mappingtool. Defaults to "XML".
+
+
+
@@ -2465,8 +3163,8 @@ properties:
deserialize BLOBs on calls to ResultSet.getObject. The
MySQLDictionary overrides the standard
DBDictionary.getBlobObject method to take this into account. If
-your driver does not deserialize automatically, set this property to
-false.
+your driver does not deserialize automatically, set this property to
+false.
@@ -2480,7 +3178,7 @@ false.
TableType: The MySQL table type to use when creating tables.
-Defaults to innodb.
+Defaults to "innodb".
@@ -2494,8 +3192,8 @@ Defaults to innodb.
UseClobs: Some older versions of MySQL do not handle clobs
-correctly. To enable clob functionality, set this to true. Defaults to
-false.
+correctly. To enable clob functionality, set this to true.
+Defaults to false.
@@ -2559,7 +3257,7 @@ properties:
UseTriggersForAutoAssign
-UseTriggersForAutoAssign: If true, then OpenJPA will allow
+UseTriggersForAutoAssign: When true, OpenJPA will allow
simulation of auto-increment columns by the use of Oracle triggers. OpenJPA will
assume that the current sequence value from the sequence specified in the
AutoAssignSequenceName parameter will hold the value of the
@@ -2649,7 +3347,7 @@ CLOB to persist with the embedded method. Defaults to 4000 characters.
executed against unicode capable columns (the NCHAR,
NVARCHAR, NCLOB Oracle types) required
special handling to be able to store unicode values. Setting this property to
-true (the default) will cause OpenJPA to attempt to detect when the column of
+true (the default) will cause OpenJPA to attempt to detect when the column of
one of these types, and if so, will attempt to correctly configure the statement
using the OraclePreparedStatement.setFormOfUse. For
more details, see the Oracle
@@ -3585,7 +4283,7 @@ following important properties:
-ForeignKeys: Set to true to automatically
+ForeignKeys: Set to true to automatically
read foreign key information during schema validation.
@@ -4178,3 +4876,4 @@ of which span multiple columns.
+