David,
Are you noticing these type of messages? A few of the OpenJPA
developers (myself included) have noticed that your committing some
solid changes into the 1.1.x branch, but not back into trunk. We should
be trying to keep trunk up-to-date with the service branches (1.0.x,
1.1.x, etc) -- if the changes apply. And, in most cases, they do apply.
Can I ask what your plans are for synching up trunk with 1.1.x?
Thanks!
Kevin
---------- Forwarded message ----------
From: ** <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>
Date: Mon, Jul 14, 2008 at 9:41 AM
Subject: Re: svn commit: r676592
-/openjpa/branches/1.1.x/openjpa-project/src/doc/manual/ref_guide_dbsetup.xml
To: [email protected] <mailto:[email protected]>
Shouldn't these type of changes also be put into trunk?
Kevin
Sent from my Verizon Wireless BlackBerry
-----Original Message-----
From: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
Date: Mon, 14 Jul 2008 13:54:53
To: <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>
Subject: svn commit: r676592 -
/openjpa/branches/1.1.x/openjpa-project/src/doc/manual/ref_guide_dbsetup.xml
Author: dezzio
Date: Mon Jul 14 06:54:52 2008
New Revision: 676592
URL: http://svn.apache.org/viewvc?rev=676592&view=rev
<http://svn.apache.org/viewvc?rev=676592&view=rev>
Log:
Added database dictionary properties to address OpenJPA-654.
Modified:
openjpa/branches/1.1.x/openjpa-project/src/doc/manual/ref_guide_dbsetup.xml
Modified:
openjpa/branches/1.1.x/openjpa-project/src/doc/manual/ref_guide_dbsetup.xml
URL:
http://svn.apache.org/viewvc/openjpa/branches/1.1.x/openjpa-project/src/doc/manual/ref_guide_dbsetup.xml?rev=676592&r1=676591&r2=676592&view=diff
<http://svn.apache.org/viewvc/openjpa/branches/1.1.x/openjpa-project/src/doc/manual/ref_guide_dbsetup.xml?rev=676592&r1=676591&r2=676592&view=diff>
==============================================================================
---
openjpa/branches/1.1.x/openjpa-project/src/doc/manual/ref_guide_dbsetup.xml
(original)
+++
openjpa/branches/1.1.x/openjpa-project/src/doc/manual/ref_guide_dbsetup.xml
Mon Jul 14 06:54:52 2008
@@ -703,6 +703,20 @@
<itemizedlist>
<!-- Please keep the list of dictionary properties
in alphabetical order -->
+ <listitem id="DBDictionary.AllowsAliasInBulkClause">
+ <para>
+ <indexterm>
+ <primary>
+ SQL
+ </primary>
+ <secondary>
+ AllowsAliasInBulkClause
+ </secondary>
+ </indexterm>
+<literal>AllowsAliasInBulkClause</literal>:
+When true, SQL delete and update statements may use table aliases.
+ </para>
+ </listitem>
<listitem id="DBDictionary.ArrayTypeName">
<para>
<indexterm>
@@ -714,7 +728,7 @@
</secondary>
</indexterm>
<literal>ArrayTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.ARRAY</literal>. This is only used when the
schema is
+<literal>java.sql.Types.ARRAY</literal>. This is used only when the
schema is
generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -732,7 +746,7 @@
</tertiary>
</indexterm>
<literal>AutoAssignClause</literal>: The column definition clause to
append to
-a creation statement. For example, " <literal>AUTO_INCREMENT</literal>
" for
+a creation statement. For example, <literal>"AUTO_INCREMENT"</literal> 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
<literal>mappingtool</literal>.
@@ -759,13 +773,31 @@
AutoAssignTypeName
</tertiary>
</indexterm>
-<literal>AutoAssignTypeName</literal>: The column type name for
auto-increment
-columns. For example, " <literal>BIGSERIAL</literal> " 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
<literal>
+<literal>AutoAssignTypeName</literal>:
+The column type name for auto-increment
+columns. For example, <literal>"BIGSERIAL"</literal> 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
<literal>
mappingtool</literal>.
</para>
</listitem>
+ <listitem id="DBDictionary.BatchLimit">
+ <para>
+ <indexterm>
+ <primary>
+ JDBC
+ </primary>
+ <secondary>
+ BatchLimit
+ </secondary>
+ </indexterm>
+<literal>BatchLimit</literal>:
+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.
+ </para>
+ </listitem>
<listitem id="DBDictionary.BigintTypeName">
<para>
<indexterm>
@@ -777,7 +809,7 @@
</secondary>
</indexterm>
<literal>BigintTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.BIGINT</literal>. This is only used when the
schema is
+<literal>java.sql.Types.BIGINT</literal>. This is used only when the
schema is
generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -792,7 +824,7 @@
</secondary>
</indexterm>
<literal>BinaryTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.BINARY</literal>. This is only used when the
schema is
+<literal>java.sql.Types.BINARY</literal>. This is used only when the
schema is
generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -807,7 +839,7 @@
</secondary>
</indexterm>
<literal>BitTypeName</literal>: The overridden default column type for
<literal>
-java.sql.Types.BIT</literal>. This is only used when the schema is
generated by
+java.sql.Types.BIT</literal>. This is used only when the schema is
generated by
the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -846,10 +878,44 @@
</secondary>
</indexterm>
<literal>BlobTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.BLOB</literal>. This is only used when the
schema is
+<literal>java.sql.Types.BLOB</literal>. This is used only when the
schema is
generated by the <literal>mappingtool</literal>.
</para>
</listitem>
+ <listitem id="DBDictionary.BooleanTypeName">
+ <para>
+ <indexterm>
+ <primary>
+ DDL
+ </primary>
+ <secondary>
+ BooleanTypeName
+ </secondary>
+ </indexterm>
+<literal>BooleanTypeName</literal>:
+The overridden default column type for <literal>
+java.sql.Types.BOOLEAN</literal>. This is used only when the schema
+is generated by the <literal>mappingtool</literal>.
+ </para>
+ </listitem>
+ <listitem id="DBDictionary.CastFunction">
+ <para>
+ <indexterm>
+ <primary>
+ SQL
+ </primary>
+ <secondary>
+ CastFunction
+ </secondary>
+ </indexterm>
+<literal>CastFunction</literal>:
+The SQL function call to cast a value to another SQL type.
+Use the tokens <literal>{0}</literal> and <literal>{1}</literal> to
represent
+the two arguments. The result of the function is convert the
+<literal>{0}</literal> value to a <literal>{1}</literal> type.
+The default is <literal>"CAST({0} AS {1})"</literal>.
+ </para>
+ </listitem>
<listitem id="DBDictionary.CatalogSeparator">
<para>
<indexterm>
@@ -876,7 +942,7 @@
</secondary>
</indexterm>
<literal>CharTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.CHAR</literal>. This is only used when the
schema is
+<literal>java.sql.Types.CHAR</literal>. This is used only when the
schema is
generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -910,8 +976,6 @@
<xref linkend="ref_guide_streamsupport"/>. Defaults to 50000.
</para>
</listitem>
- </itemizedlist>
- </section>
<listitem id="DBDictionary.ClobTypeName">
<para>
<indexterm>
@@ -931,10 +995,47 @@
</secondary>
</indexterm>
<literal>ClobTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.CLOB</literal>. This is only used when the
schema is
+<literal>java.sql.Types.CLOB</literal>. This is used only when the
schema is
generated by the <literal>mappingtool</literal>.
</para>
</listitem>
+ <listitem id="DBDictionary.ClosePoolSQL">
+ <para>
+ <indexterm>
+ <primary>
+ JDBC
+ </primary>
+ <secondary>
+ ClosePoolSQL
+ </secondary>
+ </indexterm>
+<literal>ClosePoolSQL</literal>:
+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 <literal>"SHUTDOWN"</literal>,
+that will cause the embedded database to close cleanly. Defaults to null.
+ </para>
+ </listitem>
+ <listitem id="DBDictionary.ConcatenateFunction">
+ <para>
+ <indexterm>
+ <primary>
+ SQL
+ </primary>
+ <secondary>
+ ConcatenateFunction
+ </secondary>
+ </indexterm>
+<literal>ConcatenateFunction</literal>:
+The SQL function call or operation to concatenate two strings.
+Use the tokens <literal>{0}</literal> and <literal>{1}</literal> to
represent
+the two arguments. The result of the function or operation is to
concatenate
+the <literal>{1}</literal> string to the end of the <literal>{0}</literal>
+string. Defaults to <literal>"({0}||{1})</literal>".
+ </para>
+ </listitem>
<listitem id="DBDictionary.ConstraintNameMode">
<para>
<indexterm>
@@ -981,6 +1082,72 @@
(cartesian product). Defaults to <literal>CROSS JOIN</literal>.
</para>
</listitem>
+ <listitem id="DBDictionary.CurrentDateFunction">
+ <para>
+ <indexterm>
+ <primary>
+ SQL
+ </primary>
+ <secondary>
+ CurrentDateFunction
+ </secondary>
+ </indexterm>
+<literal>CurrentDateFunction</literal>:
+The SQL function call to obtain the current date from the database.
+Defaults to <literal>"CURRENT_DATE"</literal>.
+ </para>
+ </listitem>
+ <listitem id="DBDictionary.CurrentTimeFunction">
+ <para>
+ <indexterm>
+ <primary>
+ SQL
+ </primary>
+ <secondary>
+ CurrentTimeFunction
+ </secondary>
+ </indexterm>
+<literal>CurrentTimeFunction</literal>:
+The SQL function call to obtain the current time from the database.
+Defaults to <literal>"CURRENT_TIME"</literal>.
+ </para>
+ </listitem>
+ <listitem id="DBDictionary.CurrentTimestampFunction">
+ <para>
+ <indexterm>
+ <primary>
+ SQL
+ </primary>
+ <secondary>
+ CurrentTimestampFunction
+ </secondary>
+ </indexterm>
+<literal>CurrentTimestampFunction</literal>:
+The SQL function call to obtain the current timestamp from the database.
+Defaults to <literal>"CURRENT_TIMESTAMP"</literal>.
+ </para>
+ </listitem>
+ <listitem id="DBDictionary.DatePrecision">
+ <para>
+ <indexterm>
+ <primary>
+ JDBC
+ </primary>
+ <secondary>
+ DatePrecision
+ </secondary>
+ </indexterm>
+<literal>DatePrecision</literal>:
+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.
+ </para>
+ </listitem>
<listitem id="DBDictionary.DateTypeName">
<para>
<indexterm>
@@ -992,7 +1159,7 @@
</secondary>
</indexterm>
<literal>DateTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.DATE</literal>. This is only used when the
schema is
+<literal>java.sql.Types.DATE</literal>. This is used only when the
schema is
generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -1007,7 +1174,7 @@
</secondary>
</indexterm>
<literal>DecimalTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.DECIMAL</literal>. This is only used when the
schema is
+<literal>java.sql.Types.DECIMAL</literal>. This is used only when the
schema is
generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -1038,7 +1205,7 @@
</secondary>
</indexterm>
<literal>DistinctTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.DISTINCT</literal>. This is only used when the
schema
+<literal>java.sql.Types.DISTINCT</literal>. This is used only when the
schema
is generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -1053,7 +1220,7 @@
</secondary>
</indexterm>
<literal>DoubleTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.DOUBLE</literal>. This is only used when the
schema is
+<literal>java.sql.Types.DOUBLE</literal>. This is used only when the
schema is
generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -1074,6 +1241,44 @@
<classname>DBDictionary</classname> Javadoc for available options.
</para>
</listitem>
+ <listitem id="DBDictionary.DropTableSQL">
+ <para>
+ <indexterm>
+ <primary>
+ SQL
+ </primary>
+ <secondary>
+ DropTableSQL
+ </secondary>
+ </indexterm>
+<literal>DropTableSQL</literal>:
+The SQL statement used to drop a table. Use the token
<literal>{0}</literal>
+as the argument for the table name.
+Defaults to <literal>"DROP TABLE {0}"</literal>.
+ </para>
+ </listitem>
+ <listitem id="DBDictionary.FixedSizeTypeNames">
+ <para>
+ <indexterm>
+ <primary>
+ SQL
+ </primary>
+ <secondary>
+ FixedSizeTypeNames
+ </secondary>
+ </indexterm>
+<literal>FixedSizeTypeNames</literal>:
+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 <literal>DATE</literal>, <literal>FLOAT</literal>,
+and <literal>INTEGER</literal>.
+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.
+ </para>
+ </listitem>
<listitem id="DBDictionary.FloatTypeName">
<para>
<indexterm>
@@ -1085,7 +1290,7 @@
</secondary>
</indexterm>
<literal>FloatTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.FLOAT</literal>. This is only used when the
schema is
+<literal>java.sql.Types.FLOAT</literal>. This is used only when the
schema is
generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -1112,6 +1317,56 @@
to <literal>FOR UPDATE</literal>.
</para>
</listitem>
+ <listitem id="DBDictionary.GetStringVal">
+ <para>
+ <indexterm>
+ <primary>
+ Oracle
+ </primary>
+ <secondary>
+ GetStringVal
+ </secondary>
+ </indexterm>
+ <indexterm>
+ <primary>
+ JDBC
+ </primary>
+ <secondary>
+ GetStringVal
+ </secondary>
+ </indexterm>
+<literal>GetStringVal</literal>:
+A special function to return the value of an XML
+column in a select statement. For example, Oracle uses
+<literal>".getStringVal()"</literal>, as in,
+<literal>"select t0.xmlcol.getStringVal() from xmltab t0"</literal>.
+Defaults to the empty string.
+ </para>
+ </listitem>
+ <listitem id="DBDictionary.InClauseLimit">
+ <para>
+ <indexterm>
+ <primary>
+ Oracle
+ </primary>
+ <secondary>
+ InClauseLimit
+ </secondary>
+ </indexterm>
+ <indexterm>
+ <primary>
+ JDBC
+ </primary>
+ <secondary>
+ GetStringVal
+ </secondary>
+ </indexterm>
+<literal>InClauseLimit</literal>:
+The maximum number of elements in an <literal>IN</literal> clause. OpenJPA
+works around cases where the limit is exceeded. Defaults to -1 meaning
+no limit.
+ </para>
+ </listitem>
<listitem id="DBDictionary.InitializationSQL">
<para>
<indexterm>
@@ -1160,7 +1415,7 @@
</secondary>
</indexterm>
<literal>IntegerTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.INTEGER</literal>. This is only used when the
schema is
+<literal>java.sql.Types.INTEGER</literal>. This is used only when the
schema is
generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -1175,7 +1430,7 @@
</secondary>
</indexterm>
<literal>JavaObjectTypeName</literal>: The overridden default column
type for
-<literal>java.sql.Types.JAVAOBJECT</literal>. This is only used when
the schema
+<literal>java.sql.Types.JAVAOBJECT</literal>. This is used only when
the schema
is generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -1207,8 +1462,8 @@
</tertiary>
</indexterm>
<literal>LastGeneratedKeyQuery</literal>: The query to issue to obtain
the last
-automatically generated key for an auto-increment column. For example, "
-<literal>SELECT LAST_INSERT_ID()</literal> " for MySQL. This property
is set
+automatically generated key for an auto-increment column. For example,
+<literal>"SELECT LAST_INSERT_ID()"</literal> for MySQL. This property
is set
automatically in the dictionary, and should not need to be overridden.
</para>
</listitem>
@@ -1223,7 +1478,7 @@
</secondary>
</indexterm>
<literal>LongVarbinaryTypeName</literal>: The overridden default column
type
-for <literal>java.sql.Types.LONGVARBINARY</literal>. This is only used
when the
+for <literal>java.sql.Types.LONGVARBINARY</literal>. This is used only
when the
schema is generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -1238,7 +1493,7 @@
</secondary>
</indexterm>
<literal>LongVarcharTypeName</literal>: The overridden default column
type for
-<literal>java.sql.Types.LONGVARCHAR</literal>. This is only used when the
+<literal>java.sql.Types.LONGVARCHAR</literal>. This is used only when the
schema is generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -1285,6 +1540,42 @@
a constraint name. Defaults to 128.
</para>
</listitem>
+ <listitem id="DBDictionary.MaxEmbeddedBlobSize">
+ <para>
+ <indexterm>
+ <primary>
+ SQL
+ </primary>
+ <secondary>
+ MaxEmbeddedBlobSize
+ </secondary>
+ </indexterm>
+<literal>MaxEmbeddedBlobSize</literal>:
+When greater than -1, the maximum size of a <literal>BLOB</literal> value
+that can be sent directly to the database within an insert or update
statement.
+Values whose size is greater than
<literal>MaxEmbeddedBlobSize</literal> force
+OpenJPA to work around this limitation. A value of -1 means that there is
+no limitation. Defaults to -1.
+ </para>
+ </listitem>
+ <listitem id="DBDictionary.MaxEmbeddedClobSize">
+ <para>
+ <indexterm>
+ <primary>
+ SQL
+ </primary>
+ <secondary>
+ MaxEmbeddedClobSize
+ </secondary>
+ </indexterm>
+<literal>MaxEmbeddedClobSize</literal>:
+When greater than -1, the maximum size of a <literal>CLOB</literal> value
+that can be sent directly to the database within an insert or update
statement.
+Values whose size is greater than
<literal>MaxEmbeddedClobSize</literal> force
+OpenJPA to work around this limitation. A value of -1 means that there is
+no limitation. Defaults to -1.
+ </para>
+ </listitem>
<listitem id="DBDictionary.MaxIndexNameLength">
<para>
<indexterm>
@@ -1348,7 +1639,7 @@
<literal>NextSequenceQuery</literal>: A SQL string for obtaining a native
sequence value. May use a placeholder of <literal>{0}</literal> for the
variable
sequence name. Defaults to a database-appropriate value. For example,
-" <literal>SELECT {0}.NEXTVAL FROM DUAL</literal> " for Oracle.
+<literal>"SELECT {0}.NEXTVAL FROM DUAL"</literal> for Oracle.
</para>
</listitem>
<listitem id="DBDictionary.NullTypeName">
@@ -1362,7 +1653,7 @@
</secondary>
</indexterm>
<literal>NullTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.NULL</literal>. This is only used when the
schema is
+<literal>java.sql.Types.NULL</literal>. This is used only when the
schema is
generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -1377,7 +1668,7 @@
</secondary>
</indexterm>
<literal>NumericTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.NUMERIC</literal>. This is only used when the
schema is
+<literal>java.sql.Types.NUMERIC</literal>. This is used only when the
schema is
generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -1392,7 +1683,7 @@
</secondary>
</indexterm>
<literal>OtherTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.OTHER</literal>. This is only used when the
schema is
+<literal>java.sql.Types.OTHER</literal>. This is used only when the
schema is
generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -1410,6 +1701,42 @@
Defaults to <literal>LEFT OUTER JOIN</literal>.
</para>
</listitem>
+ <listitem id="DBDictionary.Platform">
+ <para>
+ <indexterm>
+ <primary>
+ JDBC
+ </primary>
+ <secondary>
+ Platform
+ </secondary>
+ </indexterm>
+<literal>Platform</literal>:
+The name of the database that this dictionary targets.
+Defaults to <literal>"Generic"</literal>, but all dictionaries override
this
+value.
+ </para>
+ </listitem>
+ <listitem id="DBDictionary.RangePosition">
+ <para>
+ <indexterm>
+ <primary>
+ SQL
+ </primary>
+ <secondary>
+ RangePosition
+ </secondary>
+ </indexterm>
+<literal>RangePosition</literal>:
+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 (<literal>RANGE_POST_SELECT</literal>), meaning that the
range
+is expressed at the end of the select statement but before any locking
clause.
+ </para>
+ </listitem>
<listitem id="DBDictionary.RealTypeName">
<para>
<indexterm>
@@ -1421,7 +1748,7 @@
</secondary>
</indexterm>
<literal>RealTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.REAL</literal>. This is only used when the
schema is
+<literal>java.sql.Types.REAL</literal>. This is used only when the
schema is
generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -1436,7 +1763,7 @@
</secondary>
</indexterm>
<literal>RefTypeName</literal>: The overridden default column type for
<literal>
-java.sql.Types.REF</literal>. This is only used when the schema is
generated by
+java.sql.Types.REF</literal>. This is used only when the schema is
generated by
the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -1483,6 +1810,38 @@
can take place.
</para>
</listitem>
+ <listitem id="DBDictionary.RequiresCastForComparisons">
+ <para>
+ <indexterm>
+ <primary>
+ SQL
+ </primary>
+ <secondary>
+ RequiresCastForComparisons
+ </secondary>
+ </indexterm>
+<literal>RequiresCastForComparisons</literal>:
+When true, comparisons of two values of different types or
+of two literals requires a cast in the generated SQL.
+Defaults to false.
+ </para>
+ </listitem>
+ <listitem id="DBDictionary.RequiresCastForMathFunctions">
+ <para>
+ <indexterm>
+ <primary>
+ SQL
+ </primary>
+ <secondary>
+ RequiresCastForMathFunctions
+ </secondary>
+ </indexterm>
+<literal>RequiresCastForMathFunctions</literal>:
+When true, math operations on two values of different types or
+on two literals requires a cast in the generated SQL.
+Defaults to false.
+ </para>
+ </listitem>
<listitem id="DBDictionary.RequiresConditionForCrossJoin">
<para>
<indexterm>
@@ -1498,6 +1857,21 @@
ensures that there will always be some condition to the join clause.
</para>
</listitem>
+ <listitem id="DBDictionary.RequiresTargetForDelete">
+ <para>
+ <indexterm>
+ <primary>
+ SQL
+ </primary>
+ <secondary>
+ RequiresTargetForDelete
+ </secondary>
+ </indexterm>
+<literal>RequiresTargetForDelete</literal>:
+When true, the database requires a target for delete statements. Defaults
+to false.
+ </para>
+ </listitem>
<listitem id="DBDictionary.ReservedWords">
<para>
<indexterm>
@@ -1530,6 +1904,26 @@
Available values are: <literal>upper, lower, preserve</literal>.
</para>
</listitem>
+ <listitem id="DBDictionary.SearchStringEscape">
+ <para>
+ <indexterm>
+ <primary>
+ SQL
+ </primary>
+ <secondary>
+ SearchStringEscape
+ </secondary>
+ </indexterm>
+<literal>SearchStringEscape</literal>:
+The default escape character used when generating SQL
<literal>LIKE</literal>
+clauses. The escape character is used to escape the wildcard meaning
of the
+<literal>_</literal> and <literal>%</literal> 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 <literal>"\\"</literal>
+(a single backslash in Java speak).
+ </para>
+ </listitem>
<listitem id="DBDictionary.SelectWords">
<para>
<indexterm>
@@ -1546,6 +1940,62 @@
statement as a SELECT statement rather than an UPDATE statement.
</para>
</listitem>
+ <listitem id="DBDictionary.SequenceNameSQL">
+ <para>
+ <indexterm>
+ <primary>
+ schema
+ </primary>
+ <secondary>
+ reflection
+ </secondary>
+ <tertiary>
+ SequenceNameSQL
+ </tertiary>
+ </indexterm>
+<literal>SequenceNameSQL</literal>:
+Additional phrasing to use with <literal>SequenceSQL</literal>.
+Defaults to null.
+ </para>
+ </listitem>
+ <listitem id="DBDictionary.SequenceSQL">
+ <para>
+ <indexterm>
+ <primary>
+ schema
+ </primary>
+ <secondary>
+ reflection
+ </secondary>
+ <tertiary>
+ SequenceSQL
+ </tertiary>
+ </indexterm>
+<literal>SequenceSQL</literal>:
+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.
+ </para>
+ </listitem>
+
+ <listitem id="DBDictionary.SequenceSchemaSQL">
+ <para>
+ <indexterm>
+ <primary>
+ schema
+ </primary>
+ <secondary>
+ reflection
+ </secondary>
+ <tertiary>
+ SequenceSchemaSQL
+ </tertiary>
+ </indexterm>
+<literal>SequenceSchemaSQL</literal>:
+Additional phrasing to use with <literal>SequenceSQL</literal>.
+Defaults to null.
+ </para>
+ </listitem>
<listitem id="DBDictionary.SimulateLocking">
<para>
<indexterm>
@@ -1577,7 +2027,7 @@
</secondary>
</indexterm>
<literal>SmallintTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.SMALLINT</literal>. This is only used when the
schema
+<literal>java.sql.Types.SMALLINT</literal>. This is used only when the
schema
is generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -1660,7 +2110,7 @@
</secondary>
</indexterm>
<literal>StructTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.STRUCT</literal>. This is only used when the
schema is
+<literal>java.sql.Types.STRUCT</literal>. This is used only when the
schema is
generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -1708,6 +2158,22 @@
true</literal>.
</para>
</listitem>
+ <listitem id="DBDictionary.SupportsAutoAssign">
+ <para>
+ <indexterm>
+ <primary>
+ SQL
+ </primary>
+ <secondary>
+ SupportsAutoAssign
+ </secondary>
+ </indexterm>
+<literal>SupportsAutoAssign</literal>:
+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.
+ </para>
+ </listitem>
<listitem id="DBDictionary.SupportsCascadeDeleteAction">
<para>
<indexterm>
@@ -1718,8 +2184,57 @@
SupportsCascadeDeleteAction
</secondary>
</indexterm>
-<literal>SupportsCascadeDeleteAction</literal>: Whether the database
supports
-the CASCADE foreign key delete action. Defaults to <literal>true</literal>.
+<literal>SupportsCascadeDeleteAction</literal>: When true, the database
supports
+the <literal>CASCADE</literal> delete action on foreign keys.
+Defaults to true.
+ </para>
+ </listitem>
+ <listitem id="DBDictionary.SupportsCascadeUpdateAction">
+ <para>
+ <indexterm>
+ <primary>
+ foreign keys
+ </primary>
+ <secondary>
+ SupportsCascadeUpdateAction
+ </secondary>
+ </indexterm>
+<literal>SupportsCascadeUpdateAction</literal>:
+When true, the database supports the <literal>CASCADE</literal>
+update action on foreign keys. Defaults to true.
+ </para>
+ </listitem>
+ <listitem id="DBDictionary.SupportsComments">
+ <para>
+ <indexterm>
+ <primary>
+ DDL
+ </primary>
+ <secondary>
+ SupportsComments
+ </secondary>
+ </indexterm>
+<literal>SupportsComments</literal>:
+When true, comments can be associated with the table in the table creation
+statement. Defaults to false.
+ </para>
+ </listitem>
+ <listitem id="DBDictionary.SupportsCorrelatedSubselect">
+ <para>
+ <indexterm>
+ <primary>
+ SQL
+ </primary>
+ <secondary>
+ SupportsCorrelatedSubselect
+ </secondary>
+ </indexterm>
+<literal>SupportsCorrelatedSubselect</literal>:
+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.
</para>
</listitem>
<listitem id="DBDictionary.SupportsDefaultDeleteAction">
@@ -1732,8 +2247,24 @@
SupportsDefaultDeleteAction
</secondary>
</indexterm>
-<literal>SupportsDefaultDeleteAction</literal>: Whether the database
supports
-the SET DEFAULT foreign key delete action. Defaults to
<literal>true</literal>.
+<literal>SupportsDefaultDeleteAction</literal>: When true, the database
supports
+the <literal>SET DEFAULT</literal> delete action on foreign keys.
+Defaults to true.
+ </para>
+ </listitem>
+ <listitem id="DBDictionary.SupportsDefaultUpdateAction">
+ <para>
+ <indexterm>
+ <primary>
+ foreign keys
+ </primary>
+ <secondary>
+ SupportsDefaultUpdateAction
+ </secondary>
+ </indexterm>
+<literal>SupportsDefaultUpdateAction</literal>:
+When true, the database supports the <literal>SET DEFAULT</literal> update
+action on foreign keys. Defaults to true.
</para>
</listitem>
<listitem id="DBDictionary.SupportsDeferredConstraints">
@@ -1874,6 +2405,21 @@
database equivalent. Defaults to true.
</para>
</listitem>
+ <listitem id="DBDictionary.SupportsModOperator">
+ <para>
+ <indexterm>
+ <primary>
+ SQL
+ </primary>
+ <secondary>
+ SupportsModOperator
+ </secondary>
+ </indexterm>
+<literal>SupportsModOperator</literal>:
+When true, the database supports the modulus operator
(<literal>%</literal>)
+instead of the <literal>MOD</literal> function. Defaults to false.
+ </para>
+ </listitem>
<listitem
id="DBDictionary.SupportsMultipleNontransactionalResultSets">
<para>
<literal>SupportsMultipleNontransactionalResultSets</literal>: If true,
then a
@@ -1891,8 +2437,9 @@
SupportsNullDeleteAction
</secondary>
</indexterm>
-<literal>SupportsNullDeleteAction</literal>: Whether the database
supports the
-SET NULL foreign key delete action. Defaults to <literal>true</literal>.
+<literal>SupportsNullDeleteAction</literal>: When true, the database
supports
+the <literal>SET NULL</literal> delete action on foreign keys.
+Defaults to true.
</para>
</listitem>
<listitem id="DBDictionary.SupportsNullTableForGetColumns">
@@ -1971,6 +2518,21 @@
information about all the tables. Defaults to <literal>false</literal>.
</para>
</listitem>
+ <listitem id="DBDictionary.SupportsNullUpdateAction">
+ <para>
+ <indexterm>
+ <primary>
+ foreign keys
+ </primary>
+ <secondary>
+ SupportsNullUpdateAction
+ </secondary>
+ </indexterm>
+<literal>SupportsNullUpdateAction</literal>:
+When true, the database supports the <literal>SET NULL</literal> update
+action on foreign keys. Defaults to true.
+ </para>
+ </listitem>
<listitem id="DBDictionary.SupportsQueryTimeout">
<para>
<indexterm>
@@ -1998,8 +2560,24 @@
SupportsRestrictDeleteAction
</secondary>
</indexterm>
-<literal>SupportsRestrictDeleteAction</literal>: Whether the database
supports
-the RESTRICT foreign key delete action. Defaults to
<literal>true</literal>.
+<literal>SupportsRestrictDeleteAction</literal>: When true, the database
+supports the <literal>RESTRICT</literal> delete action on foreign keys.
+Defaults to true.
+ </para>
+ </listitem>
+ <listitem id="DBDictionary.SupportsRestrictUpdateAction">
+ <para>
+ <indexterm>
+ <primary>
+ foreign keys
+ </primary>
+ <secondary>
+ SupportsRestrictUpdateAction
+ </secondary>
+ </indexterm>
+<literal>SupportsRestrictUpdateAction</literal>:
+When true, the database supports the <select>RESTRICT</select> update
+action on foreign keys. Defaults to true.
</para>
</listitem>
<listitem id="DBDictionary.SupportsSchemaForGetColumns">
@@ -2136,6 +2714,22 @@
unique constraints. Defaults to true.
</para>
</listitem>
+ <listitem id="DBDictionary.SupportsXMLColumn">
+ <para>
+ <indexterm>
+ <primary>
+ DDL
+ </primary>
+ <secondary>
+ SupportsXMLColumn
+ </secondary>
+ </indexterm>
+<literal>SupportsXMLColumn</literal>:
+When true, the database supports an XML column type. See
+<xref linkend="ref_guide_xmlmapping"/>
+for information on using this capability. Defaults to false.
+ </para>
+ </listitem>
<listitem id="DBDictionary.SystemSchemas">
<para>
<indexterm>
@@ -2222,7 +2816,7 @@
</secondary>
</indexterm>
<literal>TimeTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.TIME</literal>. This is only used when the
schema is
+<literal>java.sql.Types.TIME</literal>. This is used only when the
schema is
generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -2237,7 +2831,7 @@
</secondary>
</indexterm>
<literal>TimestampTypeName</literal>: The overridden default column
type for
-<literal>java.sql.Types.TIMESTAMP</literal>. This is only used when the
schema
+<literal>java.sql.Types.TIMESTAMP</literal>. This is used only when the
schema
is generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -2252,7 +2846,7 @@
</secondary>
</indexterm>
<literal>TinyintTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.TINYINT</literal>. This is only used when the
schema is
+<literal>java.sql.Types.TINYINT</literal>. This is used only when the
schema is
generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -2286,6 +2880,66 @@
argument.
</para>
</listitem>
+ <listitem id="DBDictionary.TrimBothFunction">
+ <para>
+ <indexterm>
+ <primary>
+ SQL
+ </primary>
+ <secondary>
+ TrimBothFunction
+ </secondary>
+ </indexterm>
+<literal>TrimBothFunction</literal>:
+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 <literal>{1}</literal> when possible to represent the
character,
+and the token <literal>{0}</literal> to represent the string.
+Defaults to <literal>"TRIM(BOTH {1} FROM {0})"</literal>.
+ </para>
+ </listitem>
+ <listitem id="DBDictionary.TrimLeadingFunction">
+ <para>
+ <indexterm>
+ <primary>
+ SQL
+ </primary>
+ <secondary>
+ TrimLeadingFunction
+ </secondary>
+ </indexterm>
+<literal>TrimLeadingFunction</literal>:
+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 <literal>{1}</literal> when possible to represent the
character,
+and the token <literal>{0}</literal> to represent the string.
+Defaults to <literal>"TRIM(LEADING {1} FROM {0})"</literal>.
+ </para>
+ </listitem>
+ <listitem id="DBDictionary.TrimTrailingFunction">
+ <para>
+ <indexterm>
+ <primary>
+ SQL
+ </primary>
+ <secondary>
+ TrimTrailingFunction
+ </secondary>
+ </indexterm>
+<literal>TrimTrailingFunction</literal>:
+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 <literal>{1}</literal> when possible to represent the
character,
+and the token <literal>{0}</literal> to represent the string.
+Defaults to <literal>"TRIM(TRAILING {1} FROM {0})"</literal>.
+ </para>
+ </listitem>
<listitem
id="DBDictionary.UseGetBestRowIdentifierForPrimaryKeys">
<para>
<indexterm>
@@ -2414,8 +3068,8 @@
</secondary>
</indexterm>
<literal>ValidationSQL</literal>: The SQL used to validate that a
connection is
-still in a valid state. For example, " <literal>SELECT SYSDATE FROM DUAL
-</literal> " for Oracle.
+still in a valid state. For example, <literal>"SELECT SYSDATE FROM DUAL"
+</literal> for Oracle.
</para>
</listitem>
<listitem id="DBDictionary.VarbinaryTypeName">
@@ -2429,7 +3083,7 @@
</secondary>
</indexterm>
<literal>VarbinaryTypeName</literal>: The overridden default column
type for
-<literal>java.sql.Types.VARBINARY</literal>. This is only used when the
schema
+<literal>java.sql.Types.VARBINARY</literal>. This is used only when the
schema
is generated by the <literal>mappingtool</literal>.
</para>
</listitem>
@@ -2444,10 +3098,27 @@
</secondary>
</indexterm>
<literal>VarcharTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.VARCHAR</literal>. This is only used when the
schema is
+<literal>java.sql.Types.VARCHAR</literal>. This is used only when the
schema is
generated by the <literal>mappingtool</literal>.
</para>
</listitem>
+ <listitem id="DBDictionary.XmlTypeName">
+ <para>
+ <indexterm>
+ <primary>
+ DDL
+ </primary>
+ <secondary>
+ XmlTypeName
+ </secondary>
+ </indexterm>
+<literal>XmlTypeName</literal>:
+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
<literal>
+mappingtool</literal>. Defaults to <literal>"XML"</literal>.
+ </para>
+ </listitem>
<!-- Please keep the list of dictionary properties
in alphabetical order -->
</itemizedlist>
@@ -4196,3 +4867,4 @@
</example>
</section>
</chapter>
+