openjpa-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From dez...@apache.org
Subject svn commit: r675366 [2/2] - /openjpa/branches/1.1.x/openjpa-project/src/doc/manual/ref_guide_dbsetup.xml
Date Wed, 09 Jul 2008 22:28:31 GMT

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=675366&r1=675365&r2=675366&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 Wed Jul  9 15:28:31 2008
@@ -701,403 +701,418 @@
 <classname>DBDictionary</classname> for an unsupported database.
             </para>
             <itemizedlist>
-                <listitem id="DBDictionary.DriverVendor">
+            <!-- Please keep the list of dictionary properties 
+                 in alphabetical order -->
+                <listitem id="DBDictionary.ArrayTypeName">
                     <para>
                     <indexterm>
                         <primary>
-                            JDBC
+                            DDL
                         </primary>
                         <secondary>
-                            DriverVendor
+                            ArrayTypeName
                         </secondary>
                     </indexterm>
-<literal>DriverVendor</literal>: The vendor of the particular JDBC driver you
-are using. Some dictionaries must alter their behavior depending on the driver
-vendor. See the <literal>VENDOR_XXX</literal> constants defined in your
-dictionary's Javadoc for available options.
+<literal>ArrayTypeName</literal>: The overridden default column type for
+<literal>java.sql.Types.ARRAY</literal>. This is only used when the schema is
+generated by the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.CatalogSeparator">
+                <listitem id="DBDictionary.AutoAssignClause">
                     <para>
                     <indexterm>
                         <primary>
-                            SQL
+                            persistent fields
                         </primary>
                         <secondary>
-                            CatalogSeparator
+                            automatic field values
                         </secondary>
+                        <tertiary>
+                            AutoAssignClause
+                        </tertiary>
                     </indexterm>
-<literal>CatalogSeparator</literal>: The string the database uses to delimit
-between the schema name and the table name. This is typically <literal>"."
-</literal>, which is the default.
+<literal>AutoAssignClause</literal>: The column definition clause to append to
+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>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.CreatePrimaryKeys">
+                <listitem id="DBDictionary.AutoAssignTypeName">
                     <para>
                     <indexterm>
                         <primary>
                             DDL
                         </primary>
                         <secondary>
-                            CreatePrimaryKeys
+                            AutoAssignTypeName
                         </secondary>
                     </indexterm>
-<literal>CreatePrimaryKeys</literal>: If <literal>false</literal>, then do not
-create database primary keys for identifiers. Defaults to <literal>true
-</literal>.
-                    </para>
-                </listitem>
-                <listitem id="DBDictionary.ConstraintNameMode">
-                    <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            persistent fields
                         </primary>
                         <secondary>
-                            ConstraintNameMode
+                            automatic field values
                         </secondary>
+                        <tertiary>
+                            AutoAssignTypeName
+                        </tertiary>
                     </indexterm>
-<literal>ConstraintNameMode</literal>: When creating constraints, whether to
-put the constraint name before the definition (<literal>before</literal>),
-just after the constraint type name (<literal>mid</literal>), or after the
-constraint definition (<literal>after</literal>). Defaults to <literal>before
-</literal>.
+<literal>AutoAssignTypeName</literal>: The column type name for auto-increment
+columns. For example, " <literal>SERIAL</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>
+mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.MaxTableNameLength">
+                <listitem id="DBDictionary.BigintTypeName">
                     <para>
                     <indexterm>
                         <primary>
                             DDL
                         </primary>
                         <secondary>
-                            MaxTableNameLength
+                            BigintTypeName
                         </secondary>
                     </indexterm>
-<literal>MaxTableNameLength</literal>: The maximum number of characters in a
-table name. Defaults to 128.
+<literal>BigintTypeName</literal>: The overridden default column type for
+<literal>java.sql.Types.BIGINT</literal>. This is only used when the schema is
+generated by the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.MaxColumnNameLength">
+                <listitem id="DBDictionary.BinaryTypeName">
                     <para>
                     <indexterm>
                         <primary>
                             DDL
                         </primary>
                         <secondary>
-                            MaxColumnNameLength
+                            BinaryTypeName
                         </secondary>
                     </indexterm>
-<literal>MaxColumnNameLength</literal>: The maximum number of characters in a
-column name. Defaults to 128.
+<literal>BinaryTypeName</literal>: The overridden default column type for
+<literal>java.sql.Types.BINARY</literal>. This is only used when the schema is
+generated by the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.MaxConstraintNameLength">
+                <listitem id="DBDictionary.BitTypeName">
                     <para>
                     <indexterm>
                         <primary>
                             DDL
                         </primary>
                         <secondary>
-                            MaxConstraintNameLength
+                            BitTypeName
                         </secondary>
                     </indexterm>
-<literal>MaxConstraintNameLength</literal>: The maximum number of characters in
-a constraint name. Defaults to 128.
+<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
+the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.MaxIndexNameLength">
+                <listitem id="DBDictionary.BlobBufferSize">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            BLOB
                         </primary>
                         <secondary>
-                            MaxIndexNameLength
+                            BlobBufferSize
                         </secondary>
                     </indexterm>
+<literal>BlobBufferSize</literal>: This property establishes the buffer size in
+the <literal>INSERT/UPDATE</literal> operations with an 
+<literal>java.io.InputStream</literal>This is only used with OpenJPA's
+<xref linkend="ref_guide_streamsupport"/>. Defaults to 50000.
+                    </para>
+                </listitem>
+                <listitem id="DBDictionary.BlobTypeName">
+                    <para>
                     <indexterm>
                         <primary>
-                            indexes
+                            DDL
                         </primary>
                         <secondary>
-                            MaxIndexNameLength
+                            BlobTypeName
                         </secondary>
                     </indexterm>
-<literal>MaxIndexNameLength</literal>: The maximum number of characters in an
-index name. Defaults to 128.
-                    </para>
-                </listitem>
-                <listitem id="DBDictionary.MaxAutoAssignNameLength">
-                    <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            BLOB
                         </primary>
                         <secondary>
-                            MaxAutoAssignNameLength
+                            BlobTypeName
                         </secondary>
                     </indexterm>
-<literal>MaxAutoAssignNameLength</literal>: 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 <literal>31</literal>.
+<literal>BlobTypeName</literal>: The overridden default column type for
+<literal>java.sql.Types.BLOB</literal>. This is only used when the schema is
+generated by the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.MaxIndexesPerTable">
+***            
+                <listitem id="DBDictionary.CatalogSeparator">
                     <para>
                     <indexterm>
                         <primary>
-                            indexes
+                            SQL
                         </primary>
                         <secondary>
-                            MaxIndexesPerTable
+                            CatalogSeparator
                         </secondary>
                     </indexterm>
-<literal>MaxIndexesPerTable</literal>: The maximum number of indexes that can
-be placed on a single table. Defaults to no limit.
+<literal>CatalogSeparator</literal>: The string the database uses to delimit
+between the schema name and the table name. This is typically <literal>"."
+</literal>, which is the default.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SupportsForeignKeys">
+                <listitem id="DBDictionary.CharTypeName">
                     <para>
                     <indexterm>
                         <primary>
-                            foreign keys
+                            DDL
                         </primary>
                         <secondary>
-                            SupportsForeignKeys
+                            CharTypeName
                         </secondary>
                     </indexterm>
-<literal>SupportsForeignKeys</literal>: Whether the database supports foreign
-keys. Defaults to true.
+<literal>CharTypeName</literal>: The overridden default column type for
+<literal>java.sql.Types.CHAR</literal>. This is only used when the schema is
+generated by the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SupportsTimestampNanos">
+                <listitem id="DBDictionary.CharacterColumnSize">
                     <para>
                     <indexterm>
                         <primary>
-                            SupportsTimestampNanos
+                            DDL
                         </primary>
+                        <secondary>
+                            CharacterColumnSize
+                        </secondary>
                     </indexterm>
-<literal>SupportsTimestampNanos</literal>: Whether the database supports nanoseconds with TIMESTAMP columns.  Defaults to true.
+<literal>CharacterColumnSize</literal>: The default size of <literal>varchar
+</literal> and <literal>char</literal> columns. Typically 255.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SupportsUniqueConstraints">
+                <listitem id="DBDictionary.ClobBufferSize">
                     <para>
                     <indexterm>
                         <primary>
-                            unique constraints
+                            CLOB
                         </primary>
                         <secondary>
-                            SupportsUniqueConstraints
+                            ClobBufferSize
                         </secondary>
                     </indexterm>
-<literal>SupportsUniqueConstraints</literal>: Whether the database supports
-unique constraints. Defaults to true.
+<literal>ClobBufferSize</literal>: This property establish the buffer size in 
+the <literal>INSERT/UPDATE</literal> operations with a 
+<literal>java.io.Reader</literal>This is only used with OpenJPA's
+<xref linkend="ref_guide_streamsupport"/>. Defaults to 50000.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SupportsDeferredConstraints">
+            </itemizedlist>
+        </section>
+                <listitem id="DBDictionary.ClobTypeName">
                     <para>
                     <indexterm>
                         <primary>
-                            foreign keys
+                            DDL
                         </primary>
                         <secondary>
-                            SupportsDeferredConstraints
+                            ClobTypeName
                         </secondary>
                     </indexterm>
-<literal>SupportsDeferredConstraints</literal>: Whether the database supports
-deferred constraints. Defaults to true.
-                    </para>
-                </listitem>
-                <listitem id="DBDictionary.SupportsRestrictDeleteAction">
-                    <para>
                     <indexterm>
                         <primary>
-                            foreign keys
+                            CLOB
                         </primary>
                         <secondary>
-                            SupportsRestrictDeleteAction
+                            ClobTypeName
                         </secondary>
                     </indexterm>
-<literal>SupportsRestrictDeleteAction</literal>: Whether the database supports
-the RESTRICT foreign key delete action. Defaults to <literal>true</literal>.
+<literal>ClobTypeName</literal>: The overridden default column type for
+<literal>java.sql.Types.CLOB</literal>. This is only used when the schema is
+generated by the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SupportsCascadeDeleteAction">
+***            
+                <listitem id="DBDictionary.ConstraintNameMode">
                     <para>
                     <indexterm>
                         <primary>
-                            foreign keys
+                            DDL
                         </primary>
                         <secondary>
-                            SupportsCascadeDeleteAction
+                            ConstraintNameMode
                         </secondary>
                     </indexterm>
-<literal>SupportsCascadeDeleteAction</literal>: Whether the database supports
-the CASCADE foreign key delete action. Defaults to <literal>true</literal>.
+<literal>ConstraintNameMode</literal>: When creating constraints, whether to
+put the constraint name before the definition (<literal>before</literal>),
+just after the constraint type name (<literal>mid</literal>), or after the
+constraint definition (<literal>after</literal>). Defaults to <literal>before
+</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SupportsNullDeleteAction">
+***            
+                <listitem id="DBDictionary.CreatePrimaryKeys">
                     <para>
                     <indexterm>
                         <primary>
-                            foreign keys
+                            DDL
                         </primary>
                         <secondary>
-                            SupportsNullDeleteAction
+                            CreatePrimaryKeys
                         </secondary>
                     </indexterm>
-<literal>SupportsNullDeleteAction</literal>: Whether the database supports the
-SET NULL foreign key delete action. Defaults to <literal>true</literal>.
+<literal>CreatePrimaryKeys</literal>: If <literal>false</literal>, then do not
+create database primary keys for identifiers. Defaults to <literal>true
+</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SupportsDefaultDeleteAction">
+                <listitem id="DBDictionary.CrossJoinClause">
                     <para>
                     <indexterm>
                         <primary>
-                            foreign keys
+                            joins
                         </primary>
                         <secondary>
-                            SupportsDefaultDeleteAction
+                            CrossJoinClause
                         </secondary>
                     </indexterm>
-<literal>SupportsDefaultDeleteAction</literal>: Whether the database supports
-the SET DEFAULT foreign key delete action. Defaults to <literal>true</literal>.
+<literal>CrossJoinClause</literal>: The clause to use for a cross join
+(cartesian product). Defaults to <literal>CROSS JOIN</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SupportsAlterTableWithAddColumn">
+                <listitem id="DBDictionary.DateTypeName">
                     <para>
                     <indexterm>
                         <primary>
                             DDL
                         </primary>
                         <secondary>
-                            SupportsAlterTableWithAddColumn
+                            DateTypeName
                         </secondary>
                     </indexterm>
-<literal>SupportsAlterTableWithAddColumn</literal>: Whether the database
-supports adding a new column in an ALTER TABLE statement. Defaults to <literal>
-true</literal>.
+<literal>DateTypeName</literal>: The overridden default column type for
+<literal>java.sql.Types.DATE</literal>. This is only used when the schema is
+generated by the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SupportsAlterTableWithDropColumn">
+                <listitem id="DBDictionary.DecimalTypeName">
                     <para>
                     <indexterm>
                         <primary>
                             DDL
                         </primary>
                         <secondary>
-                            SupportsAlterTableWithDropColumn
+                            DecimalTypeName
                         </secondary>
                     </indexterm>
-<literal>SupportsAlterTableWithDropColumn</literal>: Whether the database
-supports dropping a column in an ALTER TABLE statement. Defaults to <literal>
-true</literal>.
+<literal>DecimalTypeName</literal>: The overridden default column type for
+<literal>java.sql.Types.DECIMAL</literal>. This is only used when the schema is
+generated by the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.ReservedWords">
+                <listitem id="DBDictionary.DistinctCountColumnSeparator">
                     <para>
                     <indexterm>
                         <primary>
                             SQL
                         </primary>
                         <secondary>
-                            ReservedWords
+                            DistinctCountColumnSeparator
                         </secondary>
                     </indexterm>
-<literal>ReservedWords</literal>: A comma-separated list of reserved words for
-this database, beyond the standard SQL92 keywords.
+<literal>DistinctCountColumnSeparator</literal>: The string the database uses
+to delimit between column expressions in a <literal>SELECT COUNT(DISTINCT
+column-list)</literal> clause. Defaults to null for most databases, meaning that
+multiple columns in a distinct COUNT clause are not supported.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SelectWords">
+                <listitem id="DBDictionary.DistinctTypeName">
                     <para>
                     <indexterm>
                         <primary>
-                            SQL
+                            DDL
                         </primary>
                         <secondary>
-                            SelectWords
+                            DistinctTypeName
                         </secondary>
                     </indexterm>
-<literal>SelectWords</literal>: 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. 
+<literal>DistinctTypeName</literal>: The overridden default column type for
+<literal>java.sql.Types.DISTINCT</literal>. This is only used when the schema
+is generated by the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SystemTables">
+                <listitem id="DBDictionary.DoubleTypeName">
                     <para>
                     <indexterm>
                         <primary>
-                            schema
+                            DDL
                         </primary>
                         <secondary>
-                            reflection
+                            DoubleTypeName
                         </secondary>
-                        <tertiary>
-                            SystemTables
-                        </tertiary>
                     </indexterm>
-<literal>SystemTables</literal>: A comma-separated list of table names that
-should be ignored.
+<literal>DoubleTypeName</literal>: The overridden default column type for
+<literal>java.sql.Types.DOUBLE</literal>. This is only used when the schema is
+generated by the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SystemSchemas">
+***            
+                <listitem id="DBDictionary.DriverVendor">
                     <para>
                     <indexterm>
                         <primary>
-                            schema
+                            JDBC
                         </primary>
                         <secondary>
-                            reflection
+                            DriverVendor
                         </secondary>
-                        <tertiary>
-                            SystemSchemas
-                        </tertiary>
                     </indexterm>
-<literal>SystemSchemas</literal>: A comma-separated list of schema names that
-should be ignored.
+<literal>DriverVendor</literal>: The vendor of the particular JDBC driver you
+are using. Some dictionaries must alter their behavior depending on the driver
+vendor. See the <literal>VENDOR_XXX</literal> constants defined in your
+dictionary's Javadoc for available options.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SchemaCase">
+                <listitem id="DBDictionary.FloatTypeName">
                     <para>
                     <indexterm>
                         <primary>
-                            schema
+                            DDL
                         </primary>
                         <secondary>
-                            reflection
+                            FloatTypeName
                         </secondary>
-                        <tertiary>
-                            SchemaCase
-                        </tertiary>
                     </indexterm>
-<literal>SchemaCase</literal>: The case to use when querying the database
-metadata about schema components. Defaults to making all names upper case.
-Available values are: <literal>upper, lower, preserve</literal>.
+<literal>FloatTypeName</literal>: The overridden default column type for
+<literal>java.sql.Types.FLOAT</literal>. This is only used when the schema is
+generated by the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.ValidationSQL">
+                <listitem id="DBDictionary.ForUpdateClause">
                     <para>
                     <indexterm>
                         <primary>
-                            connections
+                            SQL
                         </primary>
                         <secondary>
-                            ValidationSQL
+                            ForUpdateClause
                         </secondary>
                     </indexterm>
                     <indexterm>
                         <primary>
-                            SQL
+                            locking
                         </primary>
                         <secondary>
-                            ValidationSQL
+                            ForUpdateClause
                         </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.
+<literal>ForUpdateClause</literal>: The clause to append to <literal>SELECT
+</literal> statements to issue queries that obtain pessimistic locks. Defaults
+to <literal>FOR UPDATE</literal>.
                     </para>
                 </listitem>
                 <listitem id="DBDictionary.InitializationSQL">
@@ -1123,441 +1138,448 @@
 </classname>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.JoinSyntax">
+                <listitem id="DBDictionary.InnerJoinClause">
                     <para>
                     <indexterm>
                         <primary>
                             joins
                         </primary>
                         <secondary>
-                            JoinSyntax
+                            InnerJoinClause
                         </secondary>
                     </indexterm>
-<literal>JoinSyntax</literal>: The SQL join syntax to use in select statements.
-See <xref linkend="ref_guide_dbsetup_sql92"/>.
+<literal>InnerJoinClause</literal>: The clause to use for an inner join.
+Defaults to <literal>INNER JOIN</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.CrossJoinClause">
+                <listitem id="DBDictionary.IntegerTypeName">
                     <para>
                     <indexterm>
                         <primary>
-                            joins
+                            DDL
                         </primary>
                         <secondary>
-                            CrossJoinClause
+                            IntegerTypeName
                         </secondary>
                     </indexterm>
-<literal>CrossJoinClause</literal>: The clause to use for a cross join
-(cartesian product). Defaults to <literal>CROSS JOIN</literal>.
+<literal>IntegerTypeName</literal>: The overridden default column type for
+<literal>java.sql.Types.INTEGER</literal>. This is only used when the schema is
+generated by the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.InnerJoinClause">
+                <listitem id="DBDictionary.JavaObjectTypeName">
                     <para>
                     <indexterm>
                         <primary>
-                            joins
+                            DDL
                         </primary>
                         <secondary>
-                            InnerJoinClause
+                            JavaObjectTypeName
                         </secondary>
                     </indexterm>
-<literal>InnerJoinClause</literal>: The clause to use for an inner join.
-Defaults to <literal>INNER JOIN</literal>.
+<literal>JavaObjectTypeName</literal>: The overridden default column type for
+<literal>java.sql.Types.JAVAOBJECT</literal>. This is only used when the schema
+is generated by the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.OuterJoinClause">
+                <listitem id="DBDictionary.JoinSyntax">
                     <para>
                     <indexterm>
                         <primary>
                             joins
                         </primary>
                         <secondary>
-                            OuterJoinClause
+                            JoinSyntax
                         </secondary>
                     </indexterm>
-<literal>OuterJoinClause</literal>: The clause to use for an left outer join.
-Defaults to <literal>LEFT OUTER JOIN</literal>.
+<literal>JoinSyntax</literal>: The SQL join syntax to use in select statements.
+See <xref linkend="ref_guide_dbsetup_sql92"/>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.RequiresConditionForCrossJoin">
+                <listitem id="DBDictionary.LastGeneratedKeyQuery">
                     <para>
                     <indexterm>
                         <primary>
-                            joins
+                            persistent fields
                         </primary>
                         <secondary>
-                            RequiresConditionForCrossJoin
+                            automatic field values
                         </secondary>
+                        <tertiary>
+                            LastGeneratedKeyQuery
+                        </tertiary>
                     </indexterm>
-<literal>RequiresConditionForCrossJoin</literal>: 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.
+<literal>LastGeneratedKeyQuery</literal>: The query to issue to obtain the last
+automatically generated key for an auto-increment column. For example, "
+<literal>select @@identity</literal> " for Sybase. This property is set
+automatically in the dictionary, and should not need to be overridden.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.ToUpperCaseFunction">
+                <listitem id="DBDictionary.LongVarbinaryTypeName">
                     <para>
                     <indexterm>
                         <primary>
-                            SQL
+                            DDL
                         </primary>
                         <secondary>
-                            ToUpperCaseFunction
+                            LongVarbinaryTypeName
                         </secondary>
                     </indexterm>
-<literal>ToUpperCaseFunction</literal>: SQL function call for for converting a
-string to upper case. Use the token <literal>{0}</literal> to represent the
-argument.
+<literal>LongVarbinaryTypeName</literal>: The overridden default column type
+for <literal>java.sql.Types.LONGVARBINARY</literal>. This is only used when the
+schema is generated by the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.ToLowerCaseFunction">
+                <listitem id="DBDictionary.LongVarcharTypeName">
                     <para>
                     <indexterm>
                         <primary>
-                            SQL
+                            DDL
                         </primary>
                         <secondary>
-                            ToLowerCaseFunction
+                            LongVarcharTypeName
                         </secondary>
                     </indexterm>
-<literal>ToLowerCaseFunction</literal>: Name of the SQL function for converting
-a string to lower case. Use the token <literal>{0}</literal> to represent the
-argument.
+<literal>LongVarcharTypeName</literal>: The overridden default column type for
+<literal>java.sql.Types.LONGVARCHAR</literal>. This is only used when the
+schema is generated by the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.StringLengthFunction">
+                <listitem id="DBDictionary.MaxAutoAssignNameLength">
                     <para>
                     <indexterm>
                         <primary>
-                            SQL
+                            DDL
                         </primary>
                         <secondary>
-                            StringLengthFunction
+                            MaxAutoAssignNameLength
                         </secondary>
                     </indexterm>
-<literal>StringLengthFunction</literal>: Name of the SQL function for getting
-the length of a string. Use the token <literal>{0}</literal> to represent the
-argument.
+<literal>MaxAutoAssignNameLength</literal>: 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 <literal>31</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SubstringFunctionName">
+***            
+                <listitem id="DBDictionary.MaxColumnNameLength">
                     <para>
                     <indexterm>
                         <primary>
-                            SQL
+                            DDL
                         </primary>
                         <secondary>
-                            SubstringFunctionName
+                            MaxColumnNameLength
                         </secondary>
                     </indexterm>
-<literal>SubstringFunctionName</literal>: Name of the SQL function for getting
-the substring of a string.
+<literal>MaxColumnNameLength</literal>: The maximum number of characters in a
+column name. Defaults to 128.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.DistinctCountColumnSeparator">
+                <listitem id="DBDictionary.MaxConstraintNameLength">
                     <para>
                     <indexterm>
                         <primary>
-                            SQL
+                            DDL
                         </primary>
                         <secondary>
-                            DistinctCountColumnSeparator
+                            MaxConstraintNameLength
                         </secondary>
                     </indexterm>
-<literal>DistinctCountColumnSeparator</literal>: The string the database uses
-to delimit between column expressions in a <literal>SELECT COUNT(DISTINCT
-column-list)</literal> clause. Defaults to null for most databases, meaning that
-multiple columns in a distinct COUNT clause are not supported.
+<literal>MaxConstraintNameLength</literal>: The maximum number of characters in
+a constraint name. Defaults to 128.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.ForUpdateClause">
+                <listitem id="DBDictionary.MaxIndexNameLength">
                     <para>
                     <indexterm>
                         <primary>
-                            SQL
+                            DDL
                         </primary>
                         <secondary>
-                            ForUpdateClause
+                            MaxIndexNameLength
                         </secondary>
                     </indexterm>
                     <indexterm>
                         <primary>
-                            locking
+                            indexes
                         </primary>
                         <secondary>
-                            ForUpdateClause
+                            MaxIndexNameLength
                         </secondary>
                     </indexterm>
-<literal>ForUpdateClause</literal>: The clause to append to <literal>SELECT
-</literal> statements to issue queries that obtain pessimistic locks. Defaults
-to <literal>FOR UPDATE</literal>.
+<literal>MaxIndexNameLength</literal>: The maximum number of characters in an
+index name. Defaults to 128.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.TableForUpdateClause">
+                <listitem id="DBDictionary.MaxIndexesPerTable">
                     <para>
                     <indexterm>
                         <primary>
-                            SQL
+                            indexes
                         </primary>
                         <secondary>
-                            TableForUpdateClause
+                            MaxIndexesPerTable
                         </secondary>
                     </indexterm>
+<literal>MaxIndexesPerTable</literal>: The maximum number of indexes that can
+be placed on a single table. Defaults to no limit.
+                    </para>
+                </listitem>
+***            
+                <listitem id="DBDictionary.MaxTableNameLength">
+                    <para>
                     <indexterm>
                         <primary>
-                            locking
+                            DDL
                         </primary>
                         <secondary>
-                            TableForUpdateClause
+                            MaxTableNameLength
                         </secondary>
                     </indexterm>
-<literal>TableForUpdateClause</literal>: The clause to append to the end of
-each table alias in queries that obtain pessimistic locks. Defaults to null.
+<literal>MaxTableNameLength</literal>: The maximum number of characters in a
+table name. Defaults to 128.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SupportsSelectForUpdate">
+                <listitem id="DBDictionary.NextSequenceQuery">
                     <para>
                     <indexterm>
                         <primary>
-                            locking
+                            Sequence
                         </primary>
                         <secondary>
-                            SupportsSelectForUpdate
+                            NextSequenceQuery
                         </secondary>
                     </indexterm>
-<literal>SupportsSelectForUpdate</literal>: If true, then the database supports
-<literal>SELECT</literal> statements with a pessimistic locking clause. Defaults
-to true.
+<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.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SupportsLockingWithDistinctClause">
+                <listitem id="DBDictionary.NullTypeName">
                     <para>
                     <indexterm>
                         <primary>
-                            locking
+                            DDL
                         </primary>
                         <secondary>
-                            SupportsLockingWithDistinctClause
+                            NullTypeName
                         </secondary>
                     </indexterm>
-<literal>SupportsLockingWithDistinctClause</literal>: If true, then the
-database supports <literal>FOR UPDATE</literal> select clauses with <literal>
-DISTINCT</literal> clauses.
+<literal>NullTypeName</literal>: The overridden default column type for
+<literal>java.sql.Types.NULL</literal>. This is only used when the schema is
+generated by the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SupportsLockingWithOuterJoin">
+                <listitem id="DBDictionary.NumericTypeName">
                     <para>
                     <indexterm>
                         <primary>
-                            locking
+                            DDL
                         </primary>
                         <secondary>
-                            SupportsLockingWithOuterJoin
+                            NumericTypeName
                         </secondary>
                     </indexterm>
-<literal>SupportsLockingWithOuterJoin</literal>: If true, then the database
-supports <literal>FOR UPDATE</literal> select clauses with outer join queries.
+<literal>NumericTypeName</literal>: The overridden default column type for
+<literal>java.sql.Types.NUMERIC</literal>. This is only used when the schema is
+generated by the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SupportsLockingWithInnerJoin">
+                <listitem id="DBDictionary.OtherTypeName">
                     <para>
                     <indexterm>
                         <primary>
-                            locking
+                            DDL
                         </primary>
                         <secondary>
-                            SupportsLockingWithInnerJoin
+                            OtherTypeName
                         </secondary>
                     </indexterm>
-<literal>SupportsLockingWithInnerJoin</literal>: If true, then the database
-supports <literal>FOR UPDATE</literal> select clauses with inner join queries.
+<literal>OtherTypeName</literal>: The overridden default column type for
+<literal>java.sql.Types.OTHER</literal>. This is only used when the schema is
+generated by the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SupportsLockingWithMultipleTables">
+                <listitem id="DBDictionary.OuterJoinClause">
                     <para>
                     <indexterm>
                         <primary>
-                            locking
+                            joins
                         </primary>
                         <secondary>
-                            SupportsLockingWithMultipleTables
+                            OuterJoinClause
                         </secondary>
                     </indexterm>
-<literal>SupportsLockingWithMultipleTables</literal>: If true, then the
-database supports <literal>FOR UPDATE</literal> select clauses that select from
-multiple tables.
+<literal>OuterJoinClause</literal>: The clause to use for an left outer join.
+Defaults to <literal>LEFT OUTER JOIN</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SupportsLockingWithOrderClause">
+                <listitem id="DBDictionary.RealTypeName">
                     <para>
                     <indexterm>
                         <primary>
-                            locking
+                            DDL
                         </primary>
                         <secondary>
-                            SupportsLockingWithOrderClause
+                            RealTypeName
                         </secondary>
                     </indexterm>
-<literal>SupportsLockingWithOrderClause</literal>: If true, then the database
-supports <literal>FOR UPDATE</literal> select clauses with <literal>ORDER BY
-</literal> clauses.
+<literal>RealTypeName</literal>: The overridden default column type for
+<literal>java.sql.Types.REAL</literal>. This is only used when the schema is
+generated by the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SupportsLockingWithSelectRange">
+                <listitem id="DBDictionary.RefTypeName">
                     <para>
                     <indexterm>
                         <primary>
-                            locking
+                            DDL
                         </primary>
                         <secondary>
-                            SupportsLockingWithSelectRange
+                            RefTypeName
                         </secondary>
                     </indexterm>
-<literal>SupportsLockingWithSelectRange</literal>: If true, then the database
-supports <literal>FOR UPDATE</literal> select clauses with queries that select a
-range of data using <literal>LIMIT</literal>, <literal>TOP</literal> or the
-database equivalent. Defaults to true.
+<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
+the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SimulateLocking">
+                <listitem id="DBDictionary.RequiresAliasForSubselect">
                     <para>
                     <indexterm>
                         <primary>
-                            locking
+                            SQL
                         </primary>
                         <secondary>
-                            SimulateLocking
+                            RequiresAliasForSubselect
                         </secondary>
                     </indexterm>
-<literal>SimulateLocking</literal>: Some databases do not support pessimistic
-locking, which will result in an exception when you attempt a pessimistic
-transaction. Setting this property to <literal>true</literal> bypasses the
-locking check to allow pessimistic transactions even on databases that do not
-support locking. Defaults to <literal>false</literal>.
-                    </para>
-                </listitem>
-                <listitem id="DBDictionary.SupportsQueryTimeout">
-                    <para>
                     <indexterm>
                         <primary>
-                            JDBC
+                            JPQL
                         </primary>
                         <secondary>
-                            QueryTimeout
+                            subselects
                         </secondary>
                         <tertiary>
-                            SupportsQueryTimeout
+                            RequiresAliasForSubselect
                         </tertiary>
                     </indexterm>
-<literal>SupportsQueryTimeout</literal>: If true, then the JDBC driver supports
-calls to <methodname> java.sql.Statement.setQueryTimeout</methodname>.
+<literal>RequiresAliasForSubselect</literal>: If true, then the database
+requires that subselects in a FROM clause be assigned an alias.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SupportsHaving">
+                <listitem id="DBDictionary.RequiresAutoCommitForMetadata">
                     <para>
                     <indexterm>
                         <primary>
-                            aggregates
+                            schema
                         </primary>
                         <secondary>
-                            having
+                            reflection
                         </secondary>
                         <tertiary>
-                            SupportsHaving
+                            RequiresAutoCommitForMetaData
                         </tertiary>
                     </indexterm>
-<literal>SupportsHaving</literal>: Whether this database supports HAVING
-clauses in selects.
+<literal>RequiresAutoCommitForMetadata</literal>: If true, then the JDBC driver
+requires that autocommit be enabled before any schema interrogation operations
+can take place.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SupportsSelectStartIndex">
+                <listitem id="DBDictionary.RequiresConditionForCrossJoin">
                     <para>
                     <indexterm>
                         <primary>
-                            Query
+                            joins
                         </primary>
                         <secondary>
-                            result range
+                            RequiresConditionForCrossJoin
                         </secondary>
-                        <tertiary>
-                            SupportsSelectStartIndex
-                        </tertiary>
                     </indexterm>
-<literal>SupportsSelectStartIndex</literal>: Whether this database can create a
-select that skips the first N results.
+<literal>RequiresConditionForCrossJoin</literal>: 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.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SupportsSelectEndIndex">
+                <listitem id="DBDictionary.ReservedWords">
                     <para>
                     <indexterm>
                         <primary>
-                            Query
+                            SQL
                         </primary>
                         <secondary>
-                            result range
+                            ReservedWords
                         </secondary>
-                        <tertiary>
-                            SupportsSelectEndIndex
-                        </tertiary>
                     </indexterm>
-<literal>SupportsSelectEndIndex</literal>: Whether this database can create a
-select that is limited to the first N results.
+<literal>ReservedWords</literal>: A comma-separated list of reserved words for
+this database, beyond the standard SQL92 keywords.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SupportsSubselect">
+                <listitem id="DBDictionary.SchemaCase">
                     <para>
                     <indexterm>
                         <primary>
-                            SQL
-                        </primary>
-                        <secondary>
-                            SupportsSubselect
-                        </secondary>
-                    </indexterm>
-                    <indexterm>
-                        <primary>
-                            JPQL
+                            schema
                         </primary>
                         <secondary>
-                            subselects
+                            reflection
                         </secondary>
                         <tertiary>
-                            SupportsSubselect
+                            SchemaCase
                         </tertiary>
                     </indexterm>
-<literal>SupportsSubselect</literal>: Whether this database supports subselects
-in queries.
+<literal>SchemaCase</literal>: The case to use when querying the database
+metadata about schema components. Defaults to making all names upper case.
+Available values are: <literal>upper, lower, preserve</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.RequiresAliasForSubselect">
+                <listitem id="DBDictionary.SelectWords">
                     <para>
                     <indexterm>
                         <primary>
                             SQL
                         </primary>
                         <secondary>
-                            RequiresAliasForSubselect
+                            SelectWords
                         </secondary>
                     </indexterm>
+<literal>SelectWords</literal>: 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. 
+                    </para>
+                </listitem>
+                <listitem id="DBDictionary.SimulateLocking">
+                    <para>
                     <indexterm>
                         <primary>
-                            JPQL
+                            locking
                         </primary>
                         <secondary>
-                            subselects
+                            SimulateLocking
                         </secondary>
-                        <tertiary>
-                            RequiresAliasForSubselect
-                        </tertiary>
                     </indexterm>
-<literal>RequiresAliasForSubselect</literal>: If true, then the database
-requires that subselects in a FROM clause be assigned an alias.
+<literal>SimulateLocking</literal>: Some databases do not support pessimistic
+locking, which will result in an exception when you attempt a pessimistic
+transaction. Setting this property to <literal>true</literal> bypasses the
+locking check to allow pessimistic transactions even on databases that do not
+support locking. Defaults to <literal>false</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SupportsMultipleNontransactionalResultSets">
+                <listitem id="DBDictionary.SmallintTypeName">
                     <para>
-<literal>SupportsMultipleNontransactionalResultSets</literal>: If true, then a
-nontransactional connection is capable of having multiple open <classname>
-ResultSet</classname> instances.
+                    <indexterm>
+                        <primary>
+                            DDL
+                        </primary>
+                        <secondary>
+                            SmallintTypeName
+                        </secondary>
+                    </indexterm>
+<literal>SmallintTypeName</literal>: The overridden default column type for
+<literal>java.sql.Types.SMALLINT</literal>. This is only used when the schema
+is generated by the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
                 <listitem id="DBDictionary.StorageLimitationsFatal">
@@ -1576,6 +1598,21 @@
 a warning.
                     </para>
                 </listitem>
+                <listitem id="DBDictionary.StoreCharsAsNumbers">
+                    <para>
+                    <indexterm>
+                        <primary>
+                            persistent fields
+                        </primary>
+                        <secondary>
+                            StoreCharsAsNumbers
+                        </secondary>
+                    </indexterm>
+<literal>StoreCharsAsNumbers</literal>: Set this property to <literal>false
+</literal> to store Java <literal>char</literal> fields as <literal>CHAR
+</literal> values rather than numbers. Defaults to <literal>true</literal>.
+                    </para>
+                </listitem>
                 <listitem id="DBDictionary.StoreLargeNumbersAsStrings">
                     <para>
                     <indexterm>
@@ -1595,559 +1632,558 @@
 from being executed against the database. Defaults to <literal>false</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.StoreCharsAsNumbers">
+                <listitem id="DBDictionary.StringLengthFunction">
                     <para>
                     <indexterm>
                         <primary>
-                            persistent fields
+                            SQL
                         </primary>
                         <secondary>
-                            StoreCharsAsNumbers
+                            StringLengthFunction
                         </secondary>
                     </indexterm>
-<literal>StoreCharsAsNumbers</literal>: Set this property to <literal>false
-</literal> to store Java <literal>char</literal> fields as <literal>CHAR
-</literal> values rather than numbers. Defaults to <literal>true</literal>.
+<literal>StringLengthFunction</literal>: Name of the SQL function for getting
+the length of a string. Use the token <literal>{0}</literal> to represent the
+argument.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.UseGetBytesForBlobs">
+                <listitem id="DBDictionary.StructTypeName">
                     <para>
                     <indexterm>
                         <primary>
-                            BLOB
+                            DDL
                         </primary>
                         <secondary>
-                            UseGetBytesForBlobs
+                            StructTypeName
                         </secondary>
                     </indexterm>
-<literal>UseGetBytesForBlobs</literal>: If true, then <methodname>
-ResultSet.getBytes</methodname> will be used to obtain blob data rather than
-<methodname>ResultSet.getBinaryStream</methodname>.
+<literal>StructTypeName</literal>: The overridden default column type for
+<literal>java.sql.Types.STRUCT</literal>. This is only used when the schema is
+generated by the <literal>mappingtool</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.UseGetObjectForBlobs">
+                <listitem id="DBDictionary.SubstringFunctionName">
                     <para>
                     <indexterm>
                         <primary>
-                            BLOB
+                            SQL
                         </primary>
                         <secondary>
-                            UseGetObjectForBlobs
+                            SubstringFunctionName
                         </secondary>
                     </indexterm>
-<literal>UseGetObjectForBlobs</literal>: If true, then <methodname>
-ResultSet.getObject</methodname> will be used to obtain blob data rather than
-<methodname>ResultSet.getBinaryStream</methodname>.
+<literal>SubstringFunctionName</literal>: Name of the SQL function for getting
+the substring of a string.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.UseSetBytesForBlobs">
+                <listitem id="DBDictionary.SupportsAlterTableWithAddColumn">
                     <para>
                     <indexterm>
                         <primary>
-                            BLOB
+                            DDL
                         </primary>
                         <secondary>
-                            UseSetBytesForBlobs
+                            SupportsAlterTableWithAddColumn
                         </secondary>
                     </indexterm>
-<literal>UseSetBytesForBlobs</literal>: If true, then <methodname>
-PreparedStatement.setBytes</methodname> will be used to set blob data, rather
-than <methodname>PreparedStatement.setBinaryStream</methodname>.
+<literal>SupportsAlterTableWithAddColumn</literal>: Whether the database
+supports adding a new column in an ALTER TABLE statement. Defaults to <literal>
+true</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.UseGetStringForClobs">
+                <listitem id="DBDictionary.SupportsAlterTableWithDropColumn">
                     <para>
                     <indexterm>
                         <primary>
-                            CLOB
+                            DDL
                         </primary>
                         <secondary>
-                            UseGetStringForClobs
+                            SupportsAlterTableWithDropColumn
                         </secondary>
                     </indexterm>
-<literal>UseGetStringForClobs</literal>: If true, then <methodname>
-ResultSet.getString</methodname> will be used to obtain clob data rather than
-<methodname>ResultSet.getCharacterStream</methodname>.
+<literal>SupportsAlterTableWithDropColumn</literal>: Whether the database
+supports dropping a column in an ALTER TABLE statement. Defaults to <literal>
+true</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.UseSetStringForClobs">
+                <listitem id="DBDictionary.SupportsCascadeDeleteAction">
                     <para>
                     <indexterm>
                         <primary>
-                            CLOB
+                            foreign keys
                         </primary>
                         <secondary>
-                            UseSetStringForClobs
+                            SupportsCascadeDeleteAction
                         </secondary>
                     </indexterm>
-<literal>UseSetStringForClobs</literal>: If true, then <methodname>
-PreparedStatement.setString</methodname> will be used to set clob data, rather
-than <methodname>PreparedStatement.setCharacterStream</methodname>.
+<literal>SupportsCascadeDeleteAction</literal>: Whether the database supports
+the CASCADE foreign key delete action. Defaults to <literal>true</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.CharacterColumnSize">
+                <listitem id="DBDictionary.SupportsDefaultDeleteAction">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            foreign keys
                         </primary>
                         <secondary>
-                            CharacterColumnSize
+                            SupportsDefaultDeleteAction
                         </secondary>
                     </indexterm>
-<literal>CharacterColumnSize</literal>: The default size of <literal>varchar
-</literal> and <literal>char</literal> columns. Typically 255.
+<literal>SupportsDefaultDeleteAction</literal>: Whether the database supports
+the SET DEFAULT foreign key delete action. Defaults to <literal>true</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.ArrayTypeName">
+                <listitem id="DBDictionary.SupportsDeferredConstraints">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            foreign keys
                         </primary>
                         <secondary>
-                            ArrayTypeName
+                            SupportsDeferredConstraints
                         </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
-generated by the <literal>mappingtool</literal>.
+<literal>SupportsDeferredConstraints</literal>: Whether the database supports
+deferred constraints. Defaults to true.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.BigintTypeName">
+                <listitem id="DBDictionary.SupportsForeignKeys">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            foreign keys
                         </primary>
                         <secondary>
-                            BigintTypeName
+                            SupportsForeignKeys
                         </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
-generated by the <literal>mappingtool</literal>.
+<literal>SupportsForeignKeys</literal>: Whether the database supports foreign
+keys. Defaults to true.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.BinaryTypeName">
+                <listitem id="DBDictionary.SupportsHaving">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            aggregates
                         </primary>
                         <secondary>
-                            BinaryTypeName
+                            having
                         </secondary>
+                        <tertiary>
+                            SupportsHaving
+                        </tertiary>
                     </indexterm>
-<literal>BinaryTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.BINARY</literal>. This is only used when the schema is
-generated by the <literal>mappingtool</literal>.
+<literal>SupportsHaving</literal>: Whether this database supports HAVING
+clauses in selects.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.BitTypeName">
+                <listitem id="DBDictionary.SupportsLockingWithDistinctClause">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            locking
                         </primary>
                         <secondary>
-                            BitTypeName
+                            SupportsLockingWithDistinctClause
                         </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
-the <literal>mappingtool</literal>.
+<literal>SupportsLockingWithDistinctClause</literal>: If true, then the
+database supports <literal>FOR UPDATE</literal> select clauses with <literal>
+DISTINCT</literal> clauses.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.BlobTypeName">
+                <listitem id="DBDictionary.SupportsLockingWithInnerJoin">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
-                        </primary>
-                        <secondary>
-                            BlobTypeName
-                        </secondary>
-                    </indexterm>
-                    <indexterm>
-                        <primary>
-                            BLOB
+                            locking
                         </primary>
                         <secondary>
-                            BlobTypeName
+                            SupportsLockingWithInnerJoin
                         </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
-generated by the <literal>mappingtool</literal>.
+<literal>SupportsLockingWithInnerJoin</literal>: If true, then the database
+supports <literal>FOR UPDATE</literal> select clauses with inner join queries.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.CharTypeName">
+                <listitem id="DBDictionary.SupportsLockingWithMultipleTables">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            locking
                         </primary>
                         <secondary>
-                            CharTypeName
+                            SupportsLockingWithMultipleTables
                         </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
-generated by the <literal>mappingtool</literal>.
+<literal>SupportsLockingWithMultipleTables</literal>: If true, then the
+database supports <literal>FOR UPDATE</literal> select clauses that select from
+multiple tables.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.ClobTypeName">
+                <listitem id="DBDictionary.SupportsLockingWithOrderClause">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
-                        </primary>
-                        <secondary>
-                            ClobTypeName
-                        </secondary>
-                    </indexterm>
-                    <indexterm>
-                        <primary>
-                            CLOB
+                            locking
                         </primary>
                         <secondary>
-                            ClobTypeName
+                            SupportsLockingWithOrderClause
                         </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
-generated by the <literal>mappingtool</literal>.
+<literal>SupportsLockingWithOrderClause</literal>: If true, then the database
+supports <literal>FOR UPDATE</literal> select clauses with <literal>ORDER BY
+</literal> clauses.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.DateTypeName">
+                <listitem id="DBDictionary.SupportsLockingWithOuterJoin">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            locking
                         </primary>
                         <secondary>
-                            DateTypeName
+                            SupportsLockingWithOuterJoin
                         </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
-generated by the <literal>mappingtool</literal>.
+<literal>SupportsLockingWithOuterJoin</literal>: If true, then the database
+supports <literal>FOR UPDATE</literal> select clauses with outer join queries.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.DecimalTypeName">
+                <listitem id="DBDictionary.SupportsLockingWithSelectRange">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            locking
                         </primary>
                         <secondary>
-                            DecimalTypeName
+                            SupportsLockingWithSelectRange
                         </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
-generated by the <literal>mappingtool</literal>.
+<literal>SupportsLockingWithSelectRange</literal>: If true, then the database
+supports <literal>FOR UPDATE</literal> select clauses with queries that select a
+range of data using <literal>LIMIT</literal>, <literal>TOP</literal> or the
+database equivalent. Defaults to true.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.DistinctTypeName">
+                <listitem id="DBDictionary.SupportsMultipleNontransactionalResultSets">
+                    <para>
+<literal>SupportsMultipleNontransactionalResultSets</literal>: If true, then a
+nontransactional connection is capable of having multiple open <classname>
+ResultSet</classname> instances.
+                    </para>
+                </listitem>
+                <listitem id="DBDictionary.SupportsNullDeleteAction">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            foreign keys
                         </primary>
                         <secondary>
-                            DistinctTypeName
+                            SupportsNullDeleteAction
                         </secondary>
                     </indexterm>
-<literal>DistinctTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.DISTINCT</literal>. This is only used when the schema
-is generated by the <literal>mappingtool</literal>.
+<literal>SupportsNullDeleteAction</literal>: Whether the database supports the
+SET NULL foreign key delete action. Defaults to <literal>true</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.DoubleTypeName">
+                <listitem id="DBDictionary.SupportsNullTableForGetColumns">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            schema
                         </primary>
                         <secondary>
-                            DoubleTypeName
+                            reflection
                         </secondary>
+                        <tertiary>
+                            SupportsNullTableForGetColumns
+                        </tertiary>
                     </indexterm>
-<literal>DoubleTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.DOUBLE</literal>. This is only used when the schema is
-generated by the <literal>mappingtool</literal>.
+<literal>SupportsNullTableForGetColumns</literal>: If true, then the database
+supports passing a <literal>null</literal> parameter to <methodname>
+DatabaseMetaData.getColumns</methodname> as an optimization to get information
+about all the tables. Defaults to <literal>true</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.FloatTypeName">
+                <listitem id="DBDictionary.SupportsNullTableForGetImportedKeys">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            schema
                         </primary>
                         <secondary>
-                            FloatTypeName
+                            reflection
                         </secondary>
+                        <tertiary>
+                            SupportsNullTableForGetImportedKeys
+                        </tertiary>
                     </indexterm>
-<literal>FloatTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.FLOAT</literal>. This is only used when the schema is
-generated by the <literal>mappingtool</literal>.
+<literal>SupportsNullTableForGetImportedKeys</literal>: If true, then the
+database supports passing a <literal>null</literal> parameter to <methodname>
+DatabaseMetaData.getImportedKeys</methodname> as an optimization to get
+information about all the tables. Defaults to <literal>false</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.IntegerTypeName">
+                <listitem id="DBDictionary.SupportsNullTableForGetIndexInfo">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            schema
                         </primary>
                         <secondary>
-                            IntegerTypeName
+                            reflection
                         </secondary>
+                        <tertiary>
+                            SupportsNullTableForGetIndexInfo
+                        </tertiary>
                     </indexterm>
-<literal>IntegerTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.INTEGER</literal>. This is only used when the schema is
-generated by the <literal>mappingtool</literal>.
+<literal>SupportsNullTableForGetIndexInfo</literal>: If true, then the database
+supports passing a <literal>null</literal> parameter to <methodname>
+DatabaseMetaData.getIndexInfo</methodname> as an optimization to get information
+about all the tables. Defaults to <literal>false</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.JavaObjectTypeName">
+                <listitem id="DBDictionary.SupportsNullTableForGetPrimaryKeys">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            schema
                         </primary>
                         <secondary>
-                            JavaObjectTypeName
+                            reflection
                         </secondary>
+                        <tertiary>
+                            SupportsNullTableForGetPrimaryKeys
+                        </tertiary>
                     </indexterm>
-<literal>JavaObjectTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.JAVAOBJECT</literal>. This is only used when the schema
-is generated by the <literal>mappingtool</literal>.
+<literal>SupportsNullTableForGetPrimaryKeys</literal>: If true, then the
+database supports passing a <literal>null</literal> parameter to <methodname>
+DatabaseMetaData.getPrimaryKeys</methodname> as an optimization to get
+information about all the tables. Defaults to <literal>false</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.LongVarbinaryTypeName">
+                <listitem id="DBDictionary.SupportsQueryTimeout">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            JDBC
                         </primary>
                         <secondary>
-                            LongVarbinaryTypeName
+                            QueryTimeout
                         </secondary>
+                        <tertiary>
+                            SupportsQueryTimeout
+                        </tertiary>
                     </indexterm>
-<literal>LongVarbinaryTypeName</literal>: The overridden default column type
-for <literal>java.sql.Types.LONGVARBINARY</literal>. This is only used when the
-schema is generated by the <literal>mappingtool</literal>.
+<literal>SupportsQueryTimeout</literal>: If true, then the JDBC driver supports
+calls to <methodname> java.sql.Statement.setQueryTimeout</methodname>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.LongVarcharTypeName">
+                <listitem id="DBDictionary.SupportsRestrictDeleteAction">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            foreign keys
                         </primary>
                         <secondary>
-                            LongVarcharTypeName
+                            SupportsRestrictDeleteAction
                         </secondary>
                     </indexterm>
-<literal>LongVarcharTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.LONGVARCHAR</literal>. This is only used when the
-schema is generated by the <literal>mappingtool</literal>.
+<literal>SupportsRestrictDeleteAction</literal>: Whether the database supports
+the RESTRICT foreign key delete action. Defaults to <literal>true</literal>.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.NullTypeName">
+                <listitem id="DBDictionary.SupportsSchemaForGetColumns">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            schema
                         </primary>
                         <secondary>
-                            NullTypeName
+                            reflection
                         </secondary>
+                        <tertiary>
+                            SupportsSchemaForGetColumns
+                        </tertiary>
                     </indexterm>
-<literal>NullTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.NULL</literal>. This is only used when the schema is
-generated by the <literal>mappingtool</literal>.
+<literal>SupportsSchemaForGetColumns</literal>: If false, then the database
+driver does not support using the schema name for schema reflection on column
+names.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.NumericTypeName">
+                <listitem id="DBDictionary.SupportsSchemaForGetTables">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            schema
                         </primary>
                         <secondary>
-                            NumericTypeName
+                            reflection
                         </secondary>
+                        <tertiary>
+                            SupportsSchemaForGetTables
+                        </tertiary>
                     </indexterm>
-<literal>NumericTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.NUMERIC</literal>. This is only used when the schema is
-generated by the <literal>mappingtool</literal>.
+<literal>SupportsSchemaForGetTables</literal>: If false, then the database
+driver does not support using the schema name for schema reflection on table
+names.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.OtherTypeName">
+                <listitem id="DBDictionary.SupportsSelectEndIndex">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            Query
                         </primary>
                         <secondary>
-                            OtherTypeName
+                            result range
                         </secondary>
+                        <tertiary>
+                            SupportsSelectEndIndex
+                        </tertiary>
                     </indexterm>
-<literal>OtherTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.OTHER</literal>. This is only used when the schema is
-generated by the <literal>mappingtool</literal>.
+<literal>SupportsSelectEndIndex</literal>: Whether this database can create a
+select that is limited to the first N results.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.RealTypeName">
+                <listitem id="DBDictionary.SupportsSelectForUpdate">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            locking
                         </primary>
                         <secondary>
-                            RealTypeName
+                            SupportsSelectForUpdate
                         </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
-generated by the <literal>mappingtool</literal>.
+<literal>SupportsSelectForUpdate</literal>: If true, then the database supports
+<literal>SELECT</literal> statements with a pessimistic locking clause. Defaults
+to true.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.RefTypeName">
+                <listitem id="DBDictionary.SupportsSelectStartIndex">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            Query
                         </primary>
                         <secondary>
-                            RefTypeName
+                            result range
                         </secondary>
+                        <tertiary>
+                            SupportsSelectStartIndex
+                        </tertiary>
                     </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
-the <literal>mappingtool</literal>.
+<literal>SupportsSelectStartIndex</literal>: Whether this database can create a
+select that skips the first N results.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.SmallintTypeName">
+                <listitem id="DBDictionary.SupportsSubselect">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            SQL
                         </primary>
                         <secondary>
-                            SmallintTypeName
+                            SupportsSubselect
                         </secondary>
                     </indexterm>
-<literal>SmallintTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.SMALLINT</literal>. This is only used when the schema
-is generated by the <literal>mappingtool</literal>.
-                    </para>
-                </listitem>
-                <listitem id="DBDictionary.StructTypeName">
-                    <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            JPQL
                         </primary>
                         <secondary>
-                            StructTypeName
+                            subselects
                         </secondary>
+                        <tertiary>
+                            SupportsSubselect
+                        </tertiary>
                     </indexterm>
-<literal>StructTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.STRUCT</literal>. This is only used when the schema is
-generated by the <literal>mappingtool</literal>.
+<literal>SupportsSubselect</literal>: Whether this database supports subselects
+in queries.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.TimeTypeName">
+                <listitem id="DBDictionary.SupportsTimestampNanos">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            SupportsTimestampNanos
                         </primary>
-                        <secondary>
-                            TimeTypeName
-                        </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
-generated by the <literal>mappingtool</literal>.
+<literal>SupportsTimestampNanos</literal>: Whether the database supports nanoseconds with TIMESTAMP columns.  Defaults to true.
                     </para>
                 </listitem>
-                <listitem id="DBDictionary.TimestampTypeName">
+                <listitem id="DBDictionary.SupportsUniqueConstraints">
                     <para>
                     <indexterm>
                         <primary>
-                            DDL
+                            unique constraints
                         </primary>
                         <secondary>
-                            TimestampTypeName
+                            SupportsUniqueConstraints
                         </secondary>
                     </indexterm>
-<literal>TimestampTypeName</literal>: The overridden default column type for
-<literal>java.sql.Types.TIMESTAMP</literal>. This is only used when the schema

[... 461 lines stripped ...]


Mime
View raw message