openjpa-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ilgro...@apache.org
Subject svn commit: r1004302 [29/41] - in /websites/production/openjpa/content/builds/2.4.2: ./ apache-openjpa/ apache-openjpa/docs/ apache-openjpa/docs/css/ apache-openjpa/docs/img/
Date Fri, 06 Jan 2017 19:19:22 GMT
Added: websites/production/openjpa/content/builds/2.4.2/apache-openjpa/docs/ref_guide_dbsetup_dbsupport.html
==============================================================================
--- websites/production/openjpa/content/builds/2.4.2/apache-openjpa/docs/ref_guide_dbsetup_dbsupport.html (added)
+++ websites/production/openjpa/content/builds/2.4.2/apache-openjpa/docs/ref_guide_dbsetup_dbsupport.html Fri Jan  6 19:19:20 2017
@@ -0,0 +1,1922 @@
+<html><head>
+      <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+   <title>4.&nbsp; Database Support</title><base href="display"><link rel="stylesheet" type="text/css" href="css/docbook.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="manual.html" title="Apache OpenJPA 2.4 User's Guide"><link rel="up" href="ref_guide_dbsetup.html" title="Chapter&nbsp;4.&nbsp; JDBC"><link rel="prev" href="ref_guide_dbsetup_sqlconn.html" title="3.&nbsp; Runtime Access to DataSource"><link rel="next" href="ref_guide_dbsetup_isolation.html" title="5.&nbsp; Setting the Transaction Isolation"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.&nbsp;
+            Database Support
+        </th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ref_guide_dbsetup_sqlconn.html">Prev</a>&nbsp;</td><th width="60%" align="center">Chapter&nbsp;4.&nbsp;
+        JDBC
+    </th><td width="20%" align="right">&nbsp;<a accesskey="n" href="ref_guide_dbsetup_isolation.html">Next</a></td></tr></table><hr></div><div class="section" id="ref_guide_dbsetup_dbsupport"><div class="titlepage"><div><div><h2 class="title" style="clear: both">4.&nbsp;
+            Database Support
+        </h2></div></div></div><div class="toc"><dl class="toc"><dt><span class="section"><a href="ref_guide_dbsetup_dbsupport.html#ref_guide_dbsetup_dbdictprops">4.1. 
+                DBDictionary Properties
+            </a></span></dt><dt><span class="section"><a href="ref_guide_dbsetup_dbsupport.html#ref_guide_dbsetup_dbsupport_firebird">4.2. 
+                FirebirdDictionary Properties
+            </a></span></dt><dt><span class="section"><a href="ref_guide_dbsetup_dbsupport.html#ref_guide_dbsetup_dbsupport_mysql">4.3. 
+                MySQLDictionary Properties
+            </a></span></dt><dt><span class="section"><a href="ref_guide_dbsetup_dbsupport.html#ref_guide_dbsetup_dbsupport_oracle">4.4. 
+                OracleDictionary Properties
+            </a></span></dt><dt><span class="section"><a href="ref_guide_dbsetup_dbsupport.html#ref_guide_dbsetup_dbsupport_sybase">4.5. 
+                SybaseDictionary Properties
+            </a></span></dt><dt><span class="section"><a href="ref_guide_dbsetup_dbsupport.html#ref_guide_dbsetup_dbsupport_db2">4.6. 
+                DB2 Properties
+            </a></span></dt><dt><span class="section"><a href="ref_guide_dbsetup_dbsupport.html#ref_guide_dbsetup_dbsupport_delim_id">4.7. 
+        		Delimited Identifiers Support
+        	</a></span></dt></dl></div>
+        
+        <a class="indexterm" name="d5e9764"></a>
+        <a class="indexterm" name="d5e9766"></a>
+        <p>
+OpenJPA can take advantage of any JDBC 2.x compliant
+driver, making almost any major database a candidate for use. See our officially
+supported database list in <a class="xref" href="supported_databases.html" title="Appendix&nbsp;2.&nbsp; Supported Databases">Appendix&nbsp;2, <i>
+        Supported Databases
+    </i></a> for more
+information. Typically, OpenJPA auto-configures its JDBC behavior and SQL
+dialect for your database, based on the values of your connection-related
+configuration properties.
+        </p>
+        <p>
+If OpenJPA cannot detect what type of database you are using, or if you are
+using an unsupported database, you will have to tell OpenJPA what
+<a class="ulink" href="../javadoc/org/apache/openjpa/jdbc/sql/DBDictionary.html" target="_top">
+<code class="classname">org.apache.openjpa.jdbc.sql.DBDictionary</code></a> to use.
+The <code class="classname">DBDictionary</code> abstracts away the differences between
+databases. You can plug a dictionary into OpenJPA using the
+<a class="link" href="ref_guide_conf_jdbc.html#openjpa.jdbc.DBDictionary" title="6.2.&nbsp; openjpa.jdbc.DBDictionary"><code class="literal">openjpa.jdbc.DBDictionary
+</code></a> configuration property. The built-in dictionaries are listed
+below. If you are using an unsupported database, you may have to write your own
+<code class="classname">DBDictionary</code> subclass, a simple process.
+        </p>
+        <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">
+                <p>
+                <a class="indexterm" name="d5e9782"></a>
+<code class="literal">access</code>: Dictionary for Microsoft Access. This is an alias
+for the
+<a class="ulink" href="../javadoc/org/apache/openjpa/jdbc/sql/AccessDictionary.html" target="_top">
+<code class="classname">org.apache.openjpa.jdbc.sql.AccessDictionary</code></a>
+class.
+                </p>
+            </li><li class="listitem">
+                <p>
+                <a class="indexterm" name="d5e9789"></a>
+<code class="literal">db2</code>: Dictionary for IBM's DB2 database. This is an alias for
+the <a class="ulink" href="../javadoc/org/apache/openjpa/jdbc/sql/DB2Dictionary.html" target="_top">
+<code class="classname">org.apache.openjpa.jdbc.sql.DB2Dictionary</code></a> class.
+                </p>
+            </li><li class="listitem">
+                <p>
+                <a class="indexterm" name="d5e9796"></a>
+<code class="literal">derby</code>: Dictionary for the Apache Derby database. This is an
+alias for the 
+<a class="ulink" href="../javadoc/org/apache/openjpa/jdbc/sql/DerbyDictionary.html" target="_top">
+<code class="classname">org.apache.openjpa.jdbc.sql.DerbyDictionary</code> class.
+</a>
+                </p>
+            </li><li class="listitem">
+                <p>
+                <a class="indexterm" name="d5e9803"></a>
+<code class="literal">empress</code>: Dictionary for Empress database This is an alias
+for the
+<a class="ulink" href="../javadoc/org/apache/openjpa/jdbc/sql/EmpressDictionary.html" target="_top">
+<code class="classname">org.apache.openjpa.jdbc.sql.EmpressDictionary</code></a>
+class.
+                </p>
+            </li><li class="listitem">
+                <p>
+                <a class="indexterm" name="d5e9810"></a>
+<code class="literal">foxpro</code>: Dictionary for Microsoft Visual FoxPro. This is an
+alias for the
+<a class="ulink" href="../javadoc/org/apache/openjpa/jdbc/sql/FoxProDictionary.html" target="_top">
+<code class="classname">org.apache.openjpa.jdbc.sql.FoxProDictionary</code></a>
+class.
+                </p>
+            </li><li class="listitem">
+                <p>
+                <a class="indexterm" name="d5e9817"></a>
+<code class="literal">h2</code>: Dictionary for the H2 Database Engine. This is an
+alias for the
+<a class="ulink" href="../javadoc/org/apache/openjpa/jdbc/sql/H2Dictionary.html" target="_top">
+<code class="classname">org.apache.openjpa.jdbc.sql.H2Dictionary</code></a> class.
+                </p>
+            </li><li class="listitem">
+                <p>
+                <a class="indexterm" name="d5e9824"></a>
+<code class="literal">hsql</code>: Dictionary for the Hypersonic SQL database. This is an
+alias for the
+<a class="ulink" href="../javadoc/org/apache/openjpa/jdbc/sql/HSQLDictionary.html" target="_top">
+<code class="classname">org.apache.openjpa.jdbc.sql.HSQLDictionary</code></a> class.
+                </p>
+            </li><li class="listitem">
+                <p>
+                <a class="indexterm" name="d5e9831"></a>
+<code class="literal">informix</code>: Dictionary for the Informix database. This is an
+alias for the
+<a class="ulink" href="../javadoc/org/apache/openjpa/jdbc/sql/InformixDictionary.html" target="_top">
+<code class="classname">org.apache.openjpa.jdbc.sql.InformixDictionary</code></a>
+class.
+                </p>
+            </li><li class="listitem">
+                <p>
+                <a class="indexterm" name="d5e9838"></a>
+<code class="literal">ingres</code>: Dictionary for Ingres. This is an alias for the
+<a class="ulink" href="../javadoc/org/apache/openjpa/jdbc/sql/IngresDictionary.html" target="_top">
+<code class="classname">org.apache.openjpa.jdbc.sql.IngresDictionary</code></a>
+class.
+                </p>
+            </li><li class="listitem">
+                <p>
+                <a class="indexterm" name="d5e9845"></a>
+<code class="literal">jdatastore</code>: Dictionary for Borland JDataStore. This is an
+alias for the
+<a class="ulink" href="../javadoc/org/apache/openjpa/jdbc/sql/JDataStoreDictionary.html" target="_top">
+<code class="classname">org.apache.openjpa.jdbc.sql.JDataStoreDictionary</code></a>
+class.
+                </p>
+            </li><li class="listitem">
+                <p>
+                <a class="indexterm" name="d5e9852"></a>
+<code class="literal">mariadb</code>: Dictionary for the MariaDB database. This is an alias
+for the
+<a class="ulink" href="../javadoc/org/apache/openjpa/jdbc/sql/MariaDBDictionary.html" target="_top">
+<code class="classname">org.apache.openjpa.jdbc.sql.MariaDBDictionary</code></a>
+class.
+                </p>
+            </li><li class="listitem">
+                <p>
+                <a class="indexterm" name="d5e9859"></a>
+<code class="literal">mysql</code>: Dictionary for the MySQL database. This is an alias
+for the
+<a class="ulink" href="../javadoc/org/apache/openjpa/jdbc/sql/MySQLDictionary.html" target="_top">
+<code class="classname">org.apache.openjpa.jdbc.sql.MySQLDictionary</code></a>
+class.
+                </p>
+            </li><li class="listitem">
+                <p>
+                <a class="indexterm" name="d5e9866"></a>
+<code class="literal">oracle</code>: Dictionary for Oracle. This is an alias for the
+<a class="ulink" href="../javadoc/org/apache/openjpa/jdbc/sql/OracleDictionary.html" target="_top">
+<code class="classname">org.apache.openjpa.jdbc.sql.OracleDictionary</code></a>
+class.
+                </p>
+            </li><li class="listitem">
+                <p>
+                <a class="indexterm" name="d5e9873"></a>
+<code class="literal">pointbase</code>: Dictionary for Pointbase Embedded database. This
+is an alias for the
+<a class="ulink" href="../javadoc/org/apache/openjpa/jdbc/sql/PointbaseDictionary.html" target="_top">
+<code class="classname">org.apache.openjpa.jdbc.sql.PointbaseDictionary</code></a>
+class.
+                </p>
+            </li><li class="listitem">
+                <p>
+                <a class="indexterm" name="d5e9880"></a>
+<code class="literal">postgres</code>: Dictionary for PostgreSQL. This is an alias for
+the <a class="ulink" href="../javadoc/org/apache/openjpa/jdbc/sql/PostgresDictionary.html" target="_top">
+<code class="classname">org.apache.openjpa.jdbc.sql.PostgresDictionary</code></a>
+class.
+                </p>
+            </li><li class="listitem">
+                <p>
+                <a class="indexterm" name="d5e9887"></a>
+<code class="literal">soliddb</code>: Dictionary for IBM's SolidDB database.
+This is an alias for the
+<a class="ulink" href="../javadoc/org/apache/openjpa/jdbc/sql/SolidDBDictionary.html" target="_top">
+<code class="classname">org.apache.openjpa.jdbc.sql.SolidDBDictionary</code></a>
+class.
+                </p>
+            </li><li class="listitem">
+                <p>
+                <a class="indexterm" name="d5e9894"></a>
+<code class="literal">sqlserver</code>: Dictionary for Microsoft's SQL Server database.
+This is an alias for the
+<a class="ulink" href="../javadoc/org/apache/openjpa/jdbc/sql/SQLServerDictionary.html" target="_top">
+<code class="classname">org.apache.openjpa.jdbc.sql.SQLServerDictionary</code></a>
+class.
+                </p>
+            </li><li class="listitem">
+                <p>
+                <a class="indexterm" name="d5e9901"></a>
+<code class="literal">sybase</code>: Dictionary for Sybase. This is an alias for the
+<a class="ulink" href="../javadoc/org/apache/openjpa/jdbc/sql/SybaseDictionary.html" target="_top">
+<code class="classname">org.apache.openjpa.jdbc.sql.SybaseDictionary</code></a>
+class.
+                </p>
+            </li></ul></div>
+        <p>
+The example below demonstrates how to set a dictionary and configure its
+properties in your configuration file. The <code class="literal">DBDictionary</code>
+property uses OpenJPA's <a class="link" href="ref_guide_conf_plugins.html" title="4.&nbsp; Plugin Configuration">plugin syntax
+</a>.
+        </p>
+        <div class="example" id="ref_guide_dbsetup_dbdict"><p class="title"><b>Example&nbsp;4.7.&nbsp;
+                Specifying a DBDictionary
+            </b></p><div class="example-contents">
+            
+<pre class="programlisting">
+&lt;property name="openjpa.jdbc.DBDictionary" value="hsql(SimulateLocking=true)"/&gt;
+</pre>
+        </div></div><br class="example-break">
+        <div class="section" id="ref_guide_dbsetup_dbdictprops"><div class="titlepage"><div><div><h3 class="title">4.1.&nbsp;
+                DBDictionary Properties
+            </h3></div></div></div>
+            
+            <p>
+The standard dictionaries all recognize the following properties. These
+properties will usually not need to be overridden, since the dictionary
+implementation should use the appropriate default values for your database. You
+typically won't use these properties unless you are designing your own
+<code class="classname">DBDictionary</code> for an unsupported database.
+            </p>
+            <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem" id="DBDictionary.AllowsAliasInBulkClause">
+                    <p>
+                    <a class="indexterm" name="d5e9919"></a>
+<code class="literal">AllowsAliasInBulkClause</code>: 
+When true, SQL delete and update statements may use table aliases.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.ArrayTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e9925"></a>
+<code class="literal">ArrayTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.ARRAY</code>. This is used only when the schema is
+generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.AutoAssignClause">
+                    <p>
+                    <a class="indexterm" name="d5e9933"></a>
+<code class="literal">AutoAssignClause</code>: The column definition clause to append to
+a creation statement. For example, <code class="literal">"AUTO_INCREMENT"</code> 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
+<code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.AutoAssignTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e9942"></a>
+                    <a class="indexterm" name="d5e9945"></a>
+<code class="literal">AutoAssignTypeName</code>: 
+The column type name for auto-increment
+columns. For example, <code class="literal">"BIGSERIAL"</code> 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 
+<code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.BatchLimit">
+                    <p>
+                    <a class="indexterm" name="d5e9954"></a>
+<code class="literal">BatchLimit</code>: 
+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.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.BigintTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e9960"></a>
+<code class="literal">BigintTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.BIGINT</code>. This is used only when the schema is
+generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.BinaryTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e9968"></a>
+<code class="literal">BinaryTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.BINARY</code>. This is used only when the schema is
+generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.BitTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e9976"></a>
+<code class="literal">BitTypeName</code>: The overridden default column type for 
+<code class="literal">java.sql.Types.BIT</code>. This is used only when the schema is generated by
+the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.BlobBufferSize">
+                    <p>
+                    <a class="indexterm" name="d5e9984"></a>
+<code class="literal">BlobBufferSize</code>: This property establishes the buffer size in
+the <code class="literal">INSERT/UPDATE</code> operations with an 
+<code class="literal">java.io.InputStream</code>. This is only used with OpenJPA's
+<a class="xref" href="ref_guide_mapping_jpa.html#ref_guide_streamsupport" title="7.11.&nbsp; LOB Streaming">Section&nbsp;7.11, &#8220;
+                LOB Streaming
+            &#8221;</a>. Defaults to 50000.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.BlobTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e9993"></a>
+                    <a class="indexterm" name="d5e9996"></a>
+<code class="literal">BlobTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.BLOB</code>. This is used only when the schema is
+generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.BooleanRepresentation">
+                    <p>
+                    <a class="indexterm" name="d5e10004"></a>
+<code class="literal">BooleanRepresentation</code>:
+The overridden default representation for <code class="literal">java.lang.Boolean</code> or
+<code class="literal">boolean</code> fields in JPA Entities. A
+<a class="ulink" href="../javadoc/org/apache/openjpa/jdbc/sql/BooleanRepresentation.html" target="_top">
+<code class="classname">org.apache.openjpa.jdbc.sql.BooleanRepresentation</code></a>
+describes how Boolean values in entities get mapped into the database by default.
+Note that you additionally might need to define the <code class="literal">BooleanTypeName</code>
+<code class="literal">BitTypeName</code> settings to fit your selected BooleanRepresenation.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.BooleanTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e10016"></a>
+<code class="literal">BooleanTypeName</code>:
+The overridden default column type for
+<code class="literal">java.sql.Types.BOOLEAN</code>. This is used only when the schema
+is generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.CastFunction">
+                    <p>
+                    <a class="indexterm" name="d5e10024"></a>
+<code class="literal">CastFunction</code>: 
+The SQL function call to cast a value to another SQL type. 
+Use the tokens <code class="literal">{0}</code> and <code class="literal">{1}</code> to represent 
+the two arguments.  The result of the function is convert the 
+<code class="literal">{0}</code> value to a <code class="literal">{1}</code> type.
+The default is <code class="literal">"CAST({0} AS {1})"</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.CatalogSeparator">
+                    <p>
+                    <a class="indexterm" name="d5e10035"></a>
+<code class="literal">CatalogSeparator</code>: The string the database uses to delimit
+between the schema name and the table name. This is typically <code class="literal">"."
+</code>, which is the default.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.CharTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e10042"></a>
+<code class="literal">CharTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.CHAR</code>. This is used only when the schema is
+generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.CharacterColumnSize">
+                    <p>
+                    <a class="indexterm" name="d5e10050"></a>
+<code class="literal">CharacterColumnSize</code>: The default size of <code class="literal">varchar
+</code> and <code class="literal">char</code> columns. Typically 255.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.ClobBufferSize">
+                    <p>
+                    <a class="indexterm" name="d5e10058"></a>
+<code class="literal">ClobBufferSize</code>: This property establish the buffer size in 
+the <code class="literal">INSERT/UPDATE</code> operations with a 
+<code class="literal">java.io.Reader</code>. This is only used with OpenJPA's
+<a class="xref" href="ref_guide_mapping_jpa.html#ref_guide_streamsupport" title="7.11.&nbsp; LOB Streaming">Section&nbsp;7.11, &#8220;
+                LOB Streaming
+            &#8221;</a>. Defaults to 50000.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.ClobTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e10067"></a>
+                    <a class="indexterm" name="d5e10070"></a>
+<code class="literal">ClobTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.CLOB</code>. This is used only when the schema is
+generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.ClosePoolSQL">
+                    <p>
+                    <a class="indexterm" name="d5e10078"></a>
+<code class="literal">ClosePoolSQL</code>: 
+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 <code class="literal">"SHUTDOWN"</code>, 
+that will cause the embedded database to close cleanly.  
+Defaults to <code class="literal">null</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.ConcatenateFunction">
+                    <p>
+                    <a class="indexterm" name="d5e10086"></a>
+<code class="literal">ConcatenateFunction</code>:
+The SQL function call or operation to concatenate two strings. 
+Use the tokens <code class="literal">{0}</code> and <code class="literal">{1}</code> to represent 
+the two arguments.  The result of the function or operation is to concatenate 
+the <code class="literal">{1}</code> string to the end of the <code class="literal">{0}</code> 
+string.  Defaults to <code class="literal">"({0}||{1})"</code>.  
+                    </p>
+                </li><li class="listitem" id="DBDictionary.ConstraintNameMode">
+                    <p>
+                    <a class="indexterm" name="d5e10097"></a>
+<code class="literal">ConstraintNameMode</code>: When creating constraints, whether to
+put the constraint name before the definition (<code class="literal">"before"</code>),
+just after the constraint type name (<code class="literal">"mid"</code>), or after the
+constraint definition (<code class="literal">"after"</code>). 
+Defaults to <code class="literal">"before"</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.CreatePrimaryKeys">
+                    <p>
+                    <a class="indexterm" name="d5e10107"></a>
+<code class="literal">CreatePrimaryKeys</code>: When false, do not
+create database primary keys for identifiers. Defaults to <code class="literal">true
+</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.CrossJoinClause">
+                    <p>
+                    <a class="indexterm" name="d5e10114"></a>
+<code class="literal">CrossJoinClause</code>: The clause to use for a cross join
+(cartesian product). Defaults to <code class="literal">"CROSS JOIN"</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.CurrentDateFunction">
+                    <p>
+                    <a class="indexterm" name="d5e10121"></a>
+<code class="literal">CurrentDateFunction</code>:
+The SQL function call to obtain the current date from the database.
+Defaults to <code class="literal">"CURRENT_DATE"</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.CurrentTimeFunction">
+                    <p>
+                    <a class="indexterm" name="d5e10128"></a>
+<code class="literal">CurrentTimeFunction</code>:
+The SQL function call to obtain the current time from the database.
+Defaults to <code class="literal">"CURRENT_TIME"</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.CurrentTimestampFunction">
+                    <p>
+                    <a class="indexterm" name="d5e10135"></a>
+<code class="literal">CurrentTimestampFunction</code>:
+The SQL function call to obtain the current timestamp from the database.
+Defaults to <code class="literal">"CURRENT_TIMESTAMP"</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.DatePrecision">
+                    <p>
+                    <a class="indexterm" name="d5e10142"></a>
+<code class="literal">DatePrecision</code>:
+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.  This property can be set to one 
+of the following precisions:
+                </p>
+                <div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+                        <p>
+<code class="literal">DECI</code>: 100000000
+                        </p>
+                    </li><li class="listitem">
+                        <p>
+<code class="literal">CENIT</code>: 10000000
+                        </p>
+                    </li><li class="listitem">
+                        <p>
+<code class="literal">MILLI (default precision)</code>: 1000000
+                        </p>
+                    </li><li class="listitem">
+                        <p>
+<code class="literal">MICRO</code>: 1000
+                        </p>
+                    </li><li class="listitem">
+                        <p>
+<code class="literal">NANO (max precision)</code>: 1
+                        </p>
+                    </li></ul></div>
+                </li><li class="listitem" id="DBDictionary.DateMillisecondBehavior">
+                    <p>
+                    <a class="indexterm" name="d5e10164"></a>
+<code class="literal">DateMillisecondBehavior</code>:
+When retrieving a <code class="literal">Date</code> value from a database which stores the value in 
+a TIMESTAMP column, the values retrieved will be rounded to the nearest
+millisecond.  So a date of '2010-01-01 12:00:00.687701' stored in the
+database will become '2010-01-01 12:00:00.688' in the <code class="literal">Date</code> field of the
+entity.  The following date stored in the database as '9999-12-31 23:59:59.9999' 
+will become '10000-01-01 00:00:00.000'.  This rounding may not be desirable.  With this
+property, a user has options which will direct OpenJPA how to handle the milliseconds.  This 
+property can be set to one of the enums defined in 
+<code class="literal">DBDictionary.DateMillisecondBehaviors</code>.  The options defined in 
+<code class="literal">DBDictionary.DateMillisecondBehaviors</code> are as follows:
+                </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">
+                        <p>
+<code class="literal">DateMillisecondBehaviors.ROUND</code>: This is the default.  The 
+<code class="literal">Date</code> will be rounded to the nearest millisecond, as described above.
+                        </p>
+                    </li><li class="listitem">
+                        <p>
+<code class="literal">DateMillisecondBehaviors.DROP</code>: The milliseconds will be dropped, thus
+rounding is not performed.  As an example, a date of '2010-01-01 12:00:00.687701' stored in the
+database will become '2010-01-01 12:00:00.000' in the <code class="literal">Date</code> field of the
+entity.
+                        </p>
+                    </li><li class="listitem">
+                        <p>
+<code class="literal">DateMillisecondBehaviors.RETAIN</code>: The milliseconds will not be rounded, but will
+be retained.  As an example, a date of '2010-01-01 12:00:00.687701' stored in the
+database will become '2010-01-01 12:00:00.687' in the <code class="literal">Date</code> field of the
+entity.  
+                        </p>
+                    </li></ul></div><p>
+                    </p>
+                </li><li class="listitem" id="DBDictionary.DateTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e10187"></a>
+<code class="literal">DateTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.DATE</code>. This is used only when the schema is
+generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.DecimalTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e10195"></a>
+<code class="literal">DecimalTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.DECIMAL</code>. This is used only when the schema is
+generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.DelimitedCase">
+                	<p>
+                	<a class="indexterm" name="d5e10203"></a>
+<code class="literal">DelimitedCase</code>: The case to use when querying the database 
+about identifiers that have been delimited. It defaults to preserving the
+case of the originally specified name. Available values are:
+<code class="literal">upper, lower, preserve.</code>                	
+                    </p>
+                </li><li class="listitem" id="DBDictionary.DisableAlterSeqenceIncrementBy">
+                    <p>
+                    <a class="indexterm" name="d5e10210"></a>
+<code class="literal">DisableAlterSeqenceIncrementBy</code>: OpenJPA attempts to execute
+an ALTER SEQUENCE....INCREMENT BY SQL statement for a user defined sequence.  This
+is done to ensure that the 'allocationSize' value defined by the entity's sequence, 
+or default value, matches the sequence defined in the database.  For example, with
+an allocationSize of 1000 for a sequence named 'SEQ_JPASAMPLE', the following SQL
+will be generated (the SQL might vary slightly depending on the databases): 
+<code class="literal">ALTER SEQUENCE SEQ_JPASAMPLE INCREMENT BY 1000</code>.  If the user
+executing this command doesn't have permissions to execute the command, it will
+fail and in turn OpenJPA will disable sequence caching.  If a user wants to disable
+this SQL command, this property can be set to true.  However, the user must ensure
+that the entities defined sequence is kept in synch with the sequence defined in the
+database.  Defaults to false.
+                	</p>
+                </li><li class="listitem" id="DBDictionary.DisableSchemaFactoryColumnTypeErrors">
+                    <p>
+                    <a class="indexterm" name="d5e10217"></a>
+<code class="literal">DisableSchemaFactoryColumnTypeErrors</code>: When something other than the default 
+SchemaFactory is used, up-front mapping validation is performed against the database schema.  As
+part of the validation, OpenJPA will verify a persistence class column's type against the column type
+defined in the database schema.  If a mismatch is found, OpenJPA will throw an exception to flag the 
+mismatch types and will not allow processing to continue.  This can be limiting, especially if the 
+JDBC driver and/or database can properly handle the mismatch.  Set this property to true to disable 
+column type mismatch errors.  Defaults to false.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.DistinctCountColumnSeparator">
+                    <p>
+                    <a class="indexterm" name="d5e10223"></a>
+<code class="literal">DistinctCountColumnSeparator</code>: The string the database uses
+to delimit between column expressions in a <code class="literal">SELECT COUNT(DISTINCT
+column-list)</code> clause. Defaults to <code class="literal">null</code> 
+for most databases, meaning that
+multiple columns in a distinct COUNT clause are not supported.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.DistinctTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e10231"></a>
+<code class="literal">DistinctTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.DISTINCT</code>. This is used only when the schema
+is generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.DoubleTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e10239"></a>
+<code class="literal">DoubleTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.DOUBLE</code>. This is used only when the schema is
+generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.DriverVendor">
+                    <p>
+                    <a class="indexterm" name="d5e10247"></a>
+<code class="literal">DriverVendor</code>: The vendor of the particular JDBC driver you
+are using. Some dictionaries must alter their behavior depending on the driver
+vendor. Dictionaries usually detect the driver vendor and set this property
+themselves.  See the <code class="literal">VENDOR_XXX</code> constants defined in the 
+<code class="classname">DBDictionary</code> Javadoc for available options.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.DropTableSQL">
+                    <p>
+                    <a class="indexterm" name="d5e10255"></a>
+<code class="literal">DropTableSQL</code>: 
+The SQL statement used to drop a table.  Use the token <code class="literal">{0}</code>
+as the argument for the table name.  
+Defaults to <code class="literal">"DROP TABLE {0}"</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.FixedSizeTypeNames">
+                    <p>
+                    <a class="indexterm" name="d5e10263"></a>
+<code class="literal">FixedSizeTypeNames</code>: 
+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 <code class="literal">DATE</code>, <code class="literal">FLOAT</code>, 
+and <code class="literal">INTEGER</code>.
+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 <code class="literal">null</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.FloatTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e10273"></a>
+<code class="literal">FloatTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.FLOAT</code>. This is used only when the schema is
+generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.ForUpdateClause">
+                    <p>
+                    <a class="indexterm" name="d5e10281"></a>
+                    <a class="indexterm" name="d5e10284"></a>
+<code class="literal">ForUpdateClause</code>: The clause to append to <code class="literal">SELECT
+</code> statements to issue queries that obtain pessimistic locks. Defaults
+to <code class="literal">"FOR UPDATE"</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.GetStringVal">
+                    <p>
+                    <a class="indexterm" name="d5e10292"></a>
+                    <a class="indexterm" name="d5e10295"></a>
+<code class="literal">GetStringVal</code>: 
+A special function to return the value of an XML 
+column in a select statement.  For example, Oracle uses 
+<code class="literal">".getClobVal()"</code>, as in 
+<code class="literal">"SELECT t0.xmlcol.getClobVal() FROM xmltab t0"</code>.
+Defaults to the empty string.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.InClauseLimit">
+                    <p>
+                    <a class="indexterm" name="d5e10303"></a>
+<code class="literal">InClauseLimit</code>: 
+The maximum number of elements in an <code class="literal">IN</code> clause.  OpenJPA
+works around cases where the limit is exceeded.  Defaults to -1 meaning 
+no limit.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.InitializationSQL">
+                    <p>
+                    <a class="indexterm" name="d5e10310"></a>
+                    <a class="indexterm" name="d5e10313"></a>
+<code class="literal">InitializationSQL</code>: A piece of SQL to issue against the
+database whenever a connection is retrieved from the <code class="classname">DataSource
+</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.InnerJoinClause">
+                    <p>
+                    <a class="indexterm" name="d5e10320"></a>
+<code class="literal">InnerJoinClause</code>: The clause to use for an inner join.
+Defaults to <code class="literal">"INNER JOIN"</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.IntegerTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e10327"></a>
+<code class="literal">IntegerTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.INTEGER</code>. This is used only when the schema is
+generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.JavaObjectTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e10335"></a>
+<code class="literal">JavaObjectTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.JAVAOBJECT</code>. This is used only when the schema
+is generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.JoinSyntax">
+                    <p>
+                    <a class="indexterm" name="d5e10343"></a>
+<code class="literal">JoinSyntax</code>: The SQL join syntax to use in select statements.
+See <a class="xref" href="ref_guide_dbsetup_sql92.html" title="6.&nbsp; Setting the SQL Join Syntax">Section&nbsp;6, &#8220;
+            Setting the SQL Join Syntax
+        &#8221;</a>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.LastGeneratedKeyQuery">
+                    <p>
+                    <a class="indexterm" name="d5e10350"></a>
+<code class="literal">LastGeneratedKeyQuery</code>: The query to issue to obtain the last
+automatically generated key for an auto-increment column. For example, 
+<code class="literal">"SELECT LAST_INSERT_ID()"</code> for MySQL. This property is set
+automatically in the dictionary, and should not need to be overridden.
+If <code class="literal">SupportsGetGeneratedKeys</code> is true, the query will not
+be issued but a more efficient JDBC 3.0 mechanism for obtaining generated
+keys will be used instead.
+                    </p>
+                </li><li class="listitem" id="DBDicationary.LeadingDelimiter">
+                	<p>
+                	<a class="indexterm" name="d5e10359"></a>
+<code class="literal">LeadingDelimiter</code>: The characters to use as the leading delimiter
+for a delimited identifier. The default value is a double quote,
+<code class="literal">(")</code>. See
+<a class="xref" href="ref_guide_dbsetup_dbsupport.html#ref_guide_dbsetup_dbsupport_delim_id" title="4.7.&nbsp; Delimited Identifiers Support">Section&nbsp;4.7, &#8220;
+        		Delimited Identifiers Support
+        	&#8221;</a> for
+the default value for some specific databases.                              	
+                	</p>
+                </li><li class="listitem" id="DBDictionary.LongVarbinaryTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e10367"></a>
+<code class="literal">LongVarbinaryTypeName</code>: The overridden default column type
+for <code class="literal">java.sql.Types.LONGVARBINARY</code>. This is used only when the
+schema is generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.LongVarcharTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e10375"></a>
+<code class="literal">LongVarcharTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.LONGVARCHAR</code>. This is used only when the
+schema is generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.MaxAutoAssignNameLength">
+                    <p>
+                    <a class="indexterm" name="d5e10383"></a>
+<code class="literal">MaxAutoAssignNameLength</code>: Set this property to the maximum
+length of the sequence name used for auto-increment columns. Names longer than
+this value are truncated. Defaults to 31.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.MaxColumnNameLength">
+                    <p>
+                    <a class="indexterm" name="d5e10389"></a>
+<code class="literal">MaxColumnNameLength</code>: The maximum number of characters in a
+column name. Defaults to 128.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.MaxConstraintNameLength">
+                    <p>
+                    <a class="indexterm" name="d5e10395"></a>
+<code class="literal">MaxConstraintNameLength</code>: The maximum number of characters in
+a constraint name. Defaults to 128.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.MaxEmbeddedBlobSize">
+                    <p>
+                    <a class="indexterm" name="d5e10401"></a>
+<code class="literal">MaxEmbeddedBlobSize</code>: 
+When greater than -1, the maximum size of a <code class="literal">BLOB</code> value 
+that can be sent directly to the database within an insert or update statement.  
+Values whose size is greater than <code class="literal">MaxEmbeddedBlobSize</code> force 
+OpenJPA to work around this limitation.  A value of -1 means that there is 
+no limitation. Defaults to -1.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.MaxEmbeddedClobSize">
+                    <p>
+                    <a class="indexterm" name="d5e10409"></a>
+<code class="literal">MaxEmbeddedClobSize</code>: 
+When greater than -1, the maximum size of a <code class="literal">CLOB</code> value 
+that can be sent directly to the database within an insert or update statement.  
+Values whose size is greater than <code class="literal">MaxEmbeddedClobSize</code> force 
+OpenJPA to work around this limitation.  A value of -1 means that there is 
+no limitation. Defaults to -1.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.MaxIndexNameLength">
+                    <p>
+                    <a class="indexterm" name="d5e10417"></a>
+                    <a class="indexterm" name="d5e10420"></a>
+<code class="literal">MaxIndexNameLength</code>: The maximum number of characters in an
+index name. Defaults to 128.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.MaxIndexesPerTable">
+                    <p>
+                    <a class="indexterm" name="d5e10426"></a>
+<code class="literal">MaxIndexesPerTable</code>: The maximum number of indexes that can
+be placed on a single table. Defaults to no limit.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.MaxTableNameLength">
+                    <p>
+                    <a class="indexterm" name="d5e10432"></a>
+<code class="literal">MaxTableNameLength</code>: The maximum number of characters in a
+table name. Defaults to 128.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.NameConcatenator">
+                	<p>
+                	<a class="indexterm" name="d5e10438"></a>
+<code class="literal">NameConcatenator</code>: The value used when names are concatenated to 
+create a generated name. The default value is the underscore <code class="literal">"_"</code>.                	
+                	</p>
+                </li><li class="listitem" id="DBDictionary.NextSequenceQuery">
+                    <p>
+                    <a class="indexterm" name="d5e10445"></a>
+<code class="literal">NextSequenceQuery</code>: A SQL string for obtaining a native
+sequence value. May use a placeholder of <code class="literal">{0}</code> for the variable
+sequence name and <code class="literal">{1}</code> for sequence increment.
+Defaults to a database-appropriate value. For example, 
+<code class="literal">"SELECT {0}.NEXTVAL FROM DUAL"</code> for Oracle database.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.NullTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e10454"></a>
+<code class="literal">NullTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.NULL</code>. This is used only when the schema is
+generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.NumericTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e10462"></a>
+<code class="literal">NumericTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.NUMERIC</code>. This is used only when the schema is
+generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.OtherTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e10470"></a>
+<code class="literal">OtherTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.OTHER</code>. This is used only when the schema is
+generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.OuterJoinClause">
+                    <p>
+                    <a class="indexterm" name="d5e10478"></a>
+<code class="literal">OuterJoinClause</code>: The clause to use for an left outer join.
+Defaults to <code class="literal">"LEFT OUTER JOIN"</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.Platform">
+                    <p>
+                    <a class="indexterm" name="d5e10485"></a>
+<code class="literal">Platform</code>: 
+The name of the database that this dictionary targets.
+Defaults to <code class="literal">"Generic"</code>, but all dictionaries override this 
+value.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.RangePosition">
+                    <p>
+                    <a class="indexterm" name="d5e10492"></a>
+<code class="literal">RangePosition</code>: 
+Indicates where to specify in the SQL select statement the range, if any,
+of the result rows to be returned.  
+When limiting the number of returned result rows to a subset of all those
+that satisfy the query's conditions, the position of the range clause 
+varies by database.
+Defaults to 0, meaning that the range 
+is expressed at the end of the select statement but before any locking clause.
+See the RANGE_XXX constants defined in <code class="classname">DBDictionary</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.RealTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e10499"></a>
+<code class="literal">RealTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.REAL</code>. This is used only when the schema is
+generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.RefTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e10507"></a>
+<code class="literal">RefTypeName</code>: The overridden default column type for 
+<code class="literal">java.sql.Types.REF</code>. This is used only when the schema is generated by
+the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.RequiresAliasForSubselect">
+                    <p>
+                    <a class="indexterm" name="d5e10515"></a>
+                    <a class="indexterm" name="d5e10518"></a>
+<code class="literal">RequiresAliasForSubselect</code>: When true, the database
+requires that subselects in a FROM clause be assigned an alias.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.RequiresAutoCommitForMetadata">
+                    <p>
+                    <a class="indexterm" name="d5e10525"></a>
+<code class="literal">RequiresAutoCommitForMetadata</code>: When true, the JDBC driver
+requires that autocommit be enabled before any schema interrogation operations
+can take place.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.RequiresCastForComparisons">
+                    <p>
+                    <a class="indexterm" name="d5e10532"></a>
+<code class="literal">RequiresCastForComparisons</code>: 
+When true, comparisons of two values of different types or 
+of two literals requires a cast in the generated SQL.   
+Defaults to <code class="literal">false</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.RequiresCastForMathFunctions">
+                    <p>
+                    <a class="indexterm" name="d5e10539"></a>
+<code class="literal">RequiresCastForMathFunctions</code>: 
+When true, math operations on two values of different types or 
+on two literals requires a cast in the generated SQL.   
+Defaults to <code class="literal">false</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.RequiresConditionForCrossJoin">
+                    <p>
+                    <a class="indexterm" name="d5e10546"></a>
+<code class="literal">RequiresConditionForCrossJoin</code>: 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.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.RequiresTargetForDelete">
+                    <p>
+                    <a class="indexterm" name="d5e10552"></a>
+<code class="literal">RequiresTargetForDelete</code>:
+When true, the database requires a target for delete statements.  Defaults
+to <code class="literal">false</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.ReservedWords">
+                    <p>
+                    <a class="indexterm" name="d5e10559"></a>
+<code class="literal">ReservedWords</code>: A comma-separated list of reserved words for
+this database, beyond the standard SQL92 keywords.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SchemaCase">
+                    <p>
+                    <a class="indexterm" name="d5e10565"></a>
+<code class="literal">SchemaCase</code>: The case to use when querying the database
+metadata about schema components. Defaults to making all names upper case.
+Available values are: <code class="literal">upper, lower, preserve</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SearchStringEscape">
+                    <p>
+                    <a class="indexterm" name="d5e10573"></a>
+<code class="literal">SearchStringEscape</code>: 
+The default escape character used when generating SQL <code class="literal">LIKE</code>
+clauses.  The escape character is used to escape the wildcard meaning of the 
+<code class="literal">_</code> and <code class="literal">%</code> 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 <code class="literal">"\\"</code> 
+(a single backslash in Java speak).
+                    </p>
+                </li><li class="listitem" id="DBDictionary.RequiresSearchStringEscapeForLike">
+                    <p>
+                    <a class="indexterm" name="d5e10583"></a>
+<code class="literal">RequiresSearchStringEscapeForLike</code>:
+When true, the database requires an escape string for queries that use
+<code class="literal">LIKE</code>.  The escape string can be specified using
+<code class="literal">searchStringEscape</code>.  Defaults to <code class="literal">false</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SelectWords">
+                    <p>
+                    <a class="indexterm" name="d5e10592"></a>
+<code class="literal">SelectWords</code>: 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. 
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SequenceNameSQL">
+                    <p>
+                    <a class="indexterm" name="d5e10598"></a>
+<code class="literal">SequenceNameSQL</code>:
+Additional phrasing to use with <code class="literal">SequenceSQL</code>.  
+Defaults to <code class="literal">null</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SequenceSQL">
+                    <p>
+                    <a class="indexterm" name="d5e10607"></a>
+<code class="literal">SequenceSQL</code>: 
+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 <code class="literal">null</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SequenceSchemaSQL">
+                    <p>
+                    <a class="indexterm" name="d5e10615"></a>
+<code class="literal">SequenceSchemaSQL</code>: 
+Additional phrasing to use with <code class="literal">SequenceSQL</code>.  
+Defaults to <code class="literal">null</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SimulateLocking">
+                    <p>
+                    <a class="indexterm" name="d5e10624"></a>
+<code class="literal">SimulateLocking</code>: Some databases do not support pessimistic
+locking, which will result in an exception when you attempt a 
+transaction while using the pessimistic lock manager. 
+Setting this property to <code class="literal">true</code> suppresses the
+locking of rows in the database, thereby allowing pessimistic transactions 
+even on databases that do not support locking. At the same time, setting this
+property to <code class="literal">true</code> means that you do not obtain the semantics 
+of a pessimistic
+transaction with the database. Defaults to <code class="literal">false</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SmallintTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e10633"></a>
+<code class="literal">SmallintTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.SMALLINT</code>. This is used only when the schema
+is generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.StorageLimitationsFatal">
+                    <p>
+                    <a class="indexterm" name="d5e10641"></a>
+<code class="literal">StorageLimitationsFatal</code>: When true, any data
+truncation/rounding that is performed by the dictionary in order to store a
+value in the database will be treated as a fatal error, rather than just issuing
+a warning.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.StoreCharsAsNumbers">
+                    <p>
+                    <a class="indexterm" name="d5e10647"></a>
+<code class="literal">StoreCharsAsNumbers</code>: Set this property to <code class="literal">false
+</code> to store Java <code class="literal">char</code> fields as <code class="literal">CHAR
+</code> values rather than numbers. Defaults to <code class="literal">true</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.StoreLargeNumbersAsStrings">
+                    <p>
+                    <a class="indexterm" name="d5e10657"></a>
+<code class="literal">StoreLargeNumbersAsStrings</code>: When true, the dictionary 
+prefers to store Java fields of 
+type <code class="classname">BigInteger</code> and <code class="classname">BigDecimal</code>
+as string values in the database.  Likewise, the dictionary will instruct
+the mapping tool to map these Java types to character columns.   
+Because some databases have limitations on the number of digits that can 
+be stored in a numeric column (for example, Oracle can only store 38 
+digits), this option may be necessary for some applications.
+Note that this option may prevent OpenJPA from executing meaningful numeric 
+queries against the columns. Defaults to <code class="literal">false</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.StringLengthFunction">
+                    <p>
+                    <a class="indexterm" name="d5e10666"></a>
+<code class="literal">StringLengthFunction</code>: Name of the SQL function for getting
+the length of a string. Use the token <code class="literal">{0}</code> to represent the
+argument.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.StructTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e10673"></a>
+<code class="literal">StructTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.STRUCT</code>. This is used only when the schema is
+generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SubstringFunctionName">
+                    <p>
+                    <a class="indexterm" name="d5e10681"></a>
+<code class="literal">SubstringFunctionName</code>: Name of the SQL function for getting
+the substring of a string.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsAlterTableWithAddColumn">
+                    <p>
+                    <a class="indexterm" name="d5e10687"></a>
+<code class="literal">SupportsAlterTableWithAddColumn</code>: When true, the database
+supports adding a new column in an ALTER TABLE statement. 
+Defaults to <code class="literal">true</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsAlterTableWithDropColumn">
+                    <p>
+                    <a class="indexterm" name="d5e10694"></a>
+<code class="literal">SupportsAlterTableWithDropColumn</code>: When true, the database
+supports dropping a column in an ALTER TABLE statement. 
+Defaults to <code class="literal">true</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsAutoAssign">
+                    <p>
+                    <a class="indexterm" name="d5e10701"></a>
+<code class="literal">SupportsAutoAssign</code>: 
+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 <code class="literal">false</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsCascadeDeleteAction">
+                    <p>
+                    <a class="indexterm" name="d5e10708"></a>
+<code class="literal">SupportsCascadeDeleteAction</code>: When true, the database supports
+the <code class="literal">CASCADE</code> delete action on foreign keys. 
+Defaults to <code class="literal">true</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsCascadeUpdateAction">
+                    <p>
+                    <a class="indexterm" name="d5e10716"></a>
+<code class="literal">SupportsCascadeUpdateAction</code>: 
+When true, the database supports the <code class="literal">CASCADE</code> 
+update action on foreign keys.  Defaults to <code class="literal">true</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsComments">
+                    <p>
+                    <a class="indexterm" name="d5e10724"></a>
+<code class="literal">SupportsComments</code>: 
+When true, comments can be associated with the table in the table creation 
+statement.  Defaults to <code class="literal">false</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsCorrelatedSubselect">
+                    <p>
+                    <a class="indexterm" name="d5e10731"></a>
+<code class="literal">SupportsCorrelatedSubselect</code>: 
+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 <code class="literal">true</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsDefaultDeleteAction">
+                    <p>
+                    <a class="indexterm" name="d5e10738"></a>
+<code class="literal">SupportsDefaultDeleteAction</code>: When true, the database supports
+the <code class="literal">SET DEFAULT</code> delete action on foreign keys. 
+Defaults to <code class="literal">true</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsDefaultUpdateAction">
+                    <p>
+                    <a class="indexterm" name="d5e10746"></a>
+<code class="literal">SupportsDefaultUpdateAction</code>: 
+When true, the database supports the <code class="literal">SET DEFAULT</code> update 
+action on foreign keys.  Defaults to <code class="literal">true</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsDeferredConstraints">
+                    <p>
+                    <a class="indexterm" name="d5e10754"></a>
+<code class="literal">SupportsDeferredConstraints</code>: When true, the database 
+supports deferred constraints.  The
+database supports deferred constraints by checking for constraint 
+violations when the transaction commits, rather than checking for 
+violations immediately after receiving each SQL statement within the
+transaction. Defaults to <code class="literal">true</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsDelimitedIdentifiers">
+					<p>
+					<a class="indexterm" name="d5e10761"></a>
+<code class="literal">SupportsDelimitedIdentifiers</code>: When true, the database
+supports delimited identifiers. It defaults to <code class="literal">true</code>.					
+                	</p>
+                </li><li class="listitem" id="DBDictionary.SupportsForeignKeys">
+                    <p>
+                    <a class="indexterm" name="d5e10768"></a>
+<code class="literal">SupportsForeignKeys</code>: When true, the database supports foreign
+keys. Defaults to <code class="literal">true</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsForeignKeysComposite">
+                    <p>
+                    <a class="indexterm" name="d5e10775"></a>
+<code class="literal">SupportsForeignKeysComposite</code>: When true, the database supports
+composite foreign keys. Defaults to <code class="literal">true</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsGetGeneratedKeys">
+                    <p>
+                    <a class="indexterm" name="d5e10782"></a>
+<code class="literal">SupportsGetGeneratedKeys</code>: When true, OpenJPA will use
+<code class="methodname">java.sql.Statement.getGeneratedKeys</code> method to obtain
+values of auto-increment columns. When false, a query specified by
+<code class="literal">LastGeneratedKeyQuery</code> will be used for that purpose.
+If not set, the value will be auto-detected by querying the JDBC driver.
+Setting the value to true requires that the JDBC
+driver supports version 3.0 or higher of the JDBC specification
+and supports the <code class="methodname">java.sql.Statement.getGeneratedKeys</code>
+method.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsHaving">
+                    <p>
+                    <a class="indexterm" name="d5e10792"></a>
+<code class="literal">SupportsHaving</code>: When true, the database supports HAVING
+clauses in selects.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsLockingWithDistinctClause">
+                    <p>
+                    <a class="indexterm" name="d5e10799"></a>
+<code class="literal">SupportsLockingWithDistinctClause</code>: When true, the
+database supports <code class="literal">FOR UPDATE</code> select clauses with 
+<code class="literal">DISTINCT</code> clauses.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsLockingWithInnerJoin">
+                    <p>
+                    <a class="indexterm" name="d5e10807"></a>
+<code class="literal">SupportsLockingWithInnerJoin</code>: When true, the database
+supports <code class="literal">FOR UPDATE</code> select clauses with inner join queries.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsLockingWithMultipleTables">
+                    <p>
+                    <a class="indexterm" name="d5e10814"></a>
+<code class="literal">SupportsLockingWithMultipleTables</code>: When true, the
+database supports <code class="literal">FOR UPDATE</code> select clauses that select from
+multiple tables.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsLockingWithOrderClause">
+                    <p>
+                    <a class="indexterm" name="d5e10821"></a>
+<code class="literal">SupportsLockingWithOrderClause</code>: When true, the database
+supports <code class="literal">FOR UPDATE</code> select clauses with <code class="literal">ORDER BY
+</code> clauses.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsLockingWithOuterJoin">
+                    <p>
+                    <a class="indexterm" name="d5e10829"></a>
+<code class="literal">SupportsLockingWithOuterJoin</code>: When true, the database
+supports <code class="literal">FOR UPDATE</code> select clauses with outer join queries.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsLockingWithSelectRange">
+                    <p>
+                    <a class="indexterm" name="d5e10836"></a>
+<code class="literal">SupportsLockingWithSelectRange</code>: When true, the database
+supports <code class="literal">FOR UPDATE</code> select clauses with queries that select a
+range of data using <code class="literal">LIMIT</code>, <code class="literal">TOP</code> or the
+database equivalent. Defaults to <code class="literal">true</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsModOperator">
+                    <p>
+                    <a class="indexterm" name="d5e10846"></a>
+<code class="literal">SupportsModOperator</code>: 
+When true, the database supports the modulus operator (<code class="literal">%</code>) 
+instead of the <code class="literal">MOD</code> function.  
+Defaults to <code class="literal">false</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsMultipleNontransactionalResultSets">
+                    <p>
+<code class="literal">SupportsMultipleNontransactionalResultSets</code>: When true, a
+nontransactional connection is capable of having multiple open 
+<code class="classname">ResultSet</code> instances.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsNullDeleteAction">
+                    <p>
+                    <a class="indexterm" name="d5e10859"></a>
+<code class="literal">SupportsNullDeleteAction</code>: When true, the database supports 
+the <code class="literal">SET NULL</code> delete action on foreign keys. 
+Defaults to <code class="literal">true</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsNullTableForGetColumns">
+                    <p>
+                    <a class="indexterm" name="d5e10867"></a>
+<code class="literal">SupportsNullTableForGetColumns</code>: When true, the database
+supports passing a <code class="literal">null</code> parameter to <code class="methodname">
+DatabaseMetaData.getColumns</code> as an optimization to get information
+about all the tables. Defaults to <code class="literal">true</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsNullTableForGetImportedKeys">
+                    <p>
+                    <a class="indexterm" name="d5e10877"></a>
+<code class="literal">SupportsNullTableForGetImportedKeys</code>: When true, the
+database supports passing a <code class="literal">null</code> parameter to <code class="methodname">
+DatabaseMetaData.getImportedKeys</code> as an optimization to get
+information about all the tables. Defaults to <code class="literal">false</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsNullTableForGetIndexInfo">
+                    <p>
+                    <a class="indexterm" name="d5e10887"></a>
+<code class="literal">SupportsNullTableForGetIndexInfo</code>: When true, the database
+supports passing a <code class="literal">null</code> parameter to <code class="methodname">
+DatabaseMetaData.getIndexInfo</code> as an optimization to get information
+about all the tables. Defaults to <code class="literal">false</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsNullTableForGetPrimaryKeys">
+                    <p>
+                    <a class="indexterm" name="d5e10897"></a>
+<code class="literal">SupportsNullTableForGetPrimaryKeys</code>: When true, the
+database supports passing a <code class="literal">null</code> parameter to <code class="methodname">
+DatabaseMetaData.getPrimaryKeys</code> as an optimization to get
+information about all the tables. Defaults to <code class="literal">false</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsNullUpdateAction">
+                    <p>
+                    <a class="indexterm" name="d5e10907"></a>
+<code class="literal">SupportsNullUpdateAction</code>: 
+When true, the database supports the <code class="literal">SET NULL</code> update 
+action on foreign keys.  Defaults to <code class="literal">true</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsQueryTimeout">
+                    <p>
+                    <a class="indexterm" name="d5e10915"></a>
+<code class="literal">SupportsQueryTimeout</code>: When true, the JDBC driver supports
+calls to <code class="methodname"> java.sql.Statement.setQueryTimeout</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.AllowQueryTimeoutOnFindUpdate">
+                    <p>
+                    <a class="indexterm" name="d5e10923"></a>
+<code class="literal">AllowQueryTimeoutOnFindUpdate</code>: The JPA Specification defines the 
+javax.persistence.query.timeout, in milliseconds, as a hint to the provider.  The hint
+is used for Query operations.  This property, when set to true, will allow the query timeout hint
+to apply to EntityManager operations.  For example, when a 'find' is executed and the resultant
+entity updated, the query timeout will apply to the SQL update operation.  This property defaults
+to false.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsRestrictDeleteAction">
+                    <p>
+                    <a class="indexterm" name="d5e10930"></a>
+<code class="literal">SupportsRestrictDeleteAction</code>: When true, the database 
+supports the <code class="literal">RESTRICT</code> delete action on foreign keys. 
+Defaults to <code class="literal">true</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsRestrictUpdateAction">
+                    <p>
+                    <a class="indexterm" name="d5e10938"></a>
+<code class="literal">SupportsRestrictUpdateAction</code>: 
+When true, the database supports the <code class="literal">RESTRICT</code> update 
+action on foreign keys.  Defaults to <code class="literal">true</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsSchemaForGetColumns">
+                    <p>
+                    <a class="indexterm" name="d5e10946"></a>
+<code class="literal">SupportsSchemaForGetColumns</code>: When false, the database
+driver does not support using the schema name for schema reflection on column
+names.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsSchemaForGetTables">
+                    <p>
+                    <a class="indexterm" name="d5e10953"></a>
+<code class="literal">SupportsSchemaForGetTables</code>: If false, then the database
+driver does not support using the schema name for schema reflection on table
+names.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsSelectEndIndex">
+                    <p>
+                    <a class="indexterm" name="d5e10960"></a>
+<code class="literal">SupportsSelectEndIndex</code>: When true, the database can create a
+select that is limited to the first N results.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsSelectForUpdate">
+                    <p>
+                    <a class="indexterm" name="d5e10967"></a>
+<code class="literal">SupportsSelectForUpdate</code>: When true, the database supports
+<code class="literal">SELECT</code> statements with a pessimistic locking 
+(<code class="literal">FOR UPDATE</code>) clause. Defaults to <code class="literal">true</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsSelectStartIndex">
+                    <p>
+                    <a class="indexterm" name="d5e10976"></a>
+<code class="literal">SupportsSelectStartIndex</code>: When true, the database can create a
+select that skips the first N results.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsSimpleCaseExpression">
+                    <p>
+                    <a class="indexterm" name="d5e10983"></a>
+<code class="literal">SupportsSimpleCaseExpression</code>: When true, the database supports
+the simple form of <code class="literal">CASE</code> expression:
+<code class="literal">CASE &lt;a&gt; WHEN &lt;b&gt; THEN &lt;c&gt; WHEN &lt;d&gt; THEN &lt;e&gt; ELSE &lt;f&gt; END</code>.
+When false, the general form of <code class="literal">CASE</code> expression will be used:
+<code class="literal">CASE WHEN &lt;a&gt; = &lt;b&gt; THEN &lt;c&gt; WHEN &lt;a&gt; = &lt;d&gt; THEN &lt;e&gt; ELSE &lt;f&gt; END</code>.
+Defaults to <code class="literal">true</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsSubselect">
+                    <p>
+                    <a class="indexterm" name="d5e10994"></a>
+                    <a class="indexterm" name="d5e10997"></a>
+<code class="literal">SupportsSubselect</code>: When true, the database supports subselects
+in queries.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsTimestampNanos">
+                    <p>
+                    <a class="indexterm" name="d5e11004"></a>
+<code class="literal">SupportsTimestampNanos</code>: When true, the database supports 
+nanoseconds with TIMESTAMP columns.  
+Defaults to <code class="literal">true</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsUniqueConstraints">
+                    <p>
+                    <a class="indexterm" name="d5e11010"></a>
+<code class="literal">SupportsUniqueConstraints</code>: When true, the database supports
+unique constraints. Defaults to <code class="literal">true</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SupportsXMLColumn">
+                    <p>
+                    <a class="indexterm" name="d5e11017"></a>
+<code class="literal">SupportsXMLColumn</code>:
+When true, the database supports an XML column type.  See 
+<a class="xref" href="ref_guide_mapping_jpa.html#ref_guide_xmlmapping" title="7.10.&nbsp; XML Column Mapping">Section&nbsp;7.10, &#8220;
+              XML Column Mapping
+            &#8221;</a>
+for information on using this capability.  Defaults to <code class="literal">false</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SystemSchemas">
+                    <p>
+                    <a class="indexterm" name="d5e11025"></a>
+<code class="literal">SystemSchemas</code>: A comma-separated list of schema names that
+should be ignored.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.SystemTables">
+                    <p>
+                    <a class="indexterm" name="d5e11032"></a>
+<code class="literal">SystemTables</code>: A comma-separated list of table names that
+should be ignored.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.TableForUpdateClause">
+                    <p>
+                    <a class="indexterm" name="d5e11039"></a>
+                    <a class="indexterm" name="d5e11042"></a>
+<code class="literal">TableForUpdateClause</code>: The clause to append to the end of
+each table alias in queries that obtain pessimistic locks. 
+Defaults to <code class="literal">null</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.tableLengthIncludesSchema">
+                    <p>
+                    <a class="indexterm" name="d5e11049"></a>
+                    <code class="literal">tableLengthIncludesSchema</code>: Whether the max length for a table name includes the table's schema.
+                    Defaults to <code class="literal">false</code>.
+                </p>
+                </li><li class="listitem" id="DBDictionary.TableTypes">
+                    <p>
+                    <a class="indexterm" name="d5e11056"></a>
+<code class="literal">TableTypes</code>: Comma-separated list of table types to use when
+looking for tables during schema reflection, as defined in the <code class="methodname">
+java.sql.DatabaseMetaData.getTableInfo</code> JDBC method. An example is:
+<code class="literal">"TABLE,VIEW,ALIAS"</code>. Defaults to <code class="literal">"TABLE"</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.TimeTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e11066"></a>
+<code class="literal">TimeTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.TIME</code>. This is used only when the schema is
+generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.TimestampTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e11074"></a>
+<code class="literal">TimestampTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.TIMESTAMP</code>. This is used only when the schema
+is generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.TinyintTypeName">
+                    <p>
+                    <a class="indexterm" name="d5e11082"></a>
+<code class="literal">TinyintTypeName</code>: The overridden default column type for
+<code class="literal">java.sql.Types.TINYINT</code>. This is used only when the schema is
+generated by the <code class="literal">mappingtool</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.ToLowerCaseFunction">
+                    <p>
+                    <a class="indexterm" name="d5e11090"></a>
+<code class="literal">ToLowerCaseFunction</code>: Name of the SQL function for converting
+a string to lower case. Use the token <code class="literal">{0}</code> to represent the
+argument.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.ToUpperCaseFunction">
+                    <p>
+                    <a class="indexterm" name="d5e11097"></a>
+<code class="literal">ToUpperCaseFunction</code>: SQL function call for converting a
+string to upper case. Use the token <code class="literal">{0}</code> to represent the
+argument.
+                    </p>
+                </li><li class="listitem" id="DBDicationary.TrailingDelimiter">
+                	<p>
+                	<a class="indexterm" name="d5e11104"></a>
+<code class="literal">TrailingDelimiter</code>: The characters to use as the trailing delimiter
+for a delimited identifier. The default value is a double quote,
+<code class="literal">(")</code>. See
+<a class="xref" href="ref_guide_dbsetup_dbsupport.html#ref_guide_dbsetup_dbsupport_delim_id" title="4.7.&nbsp; Delimited Identifiers Support">Section&nbsp;4.7, &#8220;
+        		Delimited Identifiers Support
+        	&#8221;</a> for
+the default value for some specific databases.               	
+                	</p>
+                </li><li class="listitem" id="DBDictionary.TrimBothFunction">
+                    <p>
+                    <a class="indexterm" name="d5e11112"></a>
+<code class="literal">TrimBothFunction</code>: 
+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 <code class="literal">{1}</code> when possible to represent the character, 
+and the token <code class="literal">{0}</code> to represent the string.  
+Defaults to <code class="literal">"TRIM(BOTH {1} FROM {0})"</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.TrimLeadingFunction">
+                    <p>
+                    <a class="indexterm" name="d5e11121"></a>
+<code class="literal">TrimLeadingFunction</code>: 
+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 <code class="literal">{1}</code> when possible to represent the character, 
+and the token <code class="literal">{0}</code> to represent the string.  
+Defaults to <code class="literal">"TRIM(LEADING {1} FROM {0})"</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.TrimStringColumns">
+                    <p>
+                    <a class="indexterm" name="d5e11130"></a>
+<code class="literal">TrimStringColumns</code>: When <code class="literal">true</code>, the resulting String from
+<code class="methodname">ResultSet.getString</code> will be trimmed of trailing white space.  Defaults
+to <code class="literal">false</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.TrimTrailingFunction">
+                    <p>
+                    <a class="indexterm" name="d5e11139"></a>
+<code class="literal">TrimTrailingFunction</code>: 
+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 <code class="literal">{1}</code> when possible to represent the character, 
+and the token <code class="literal">{0}</code> to represent the string.  
+Defaults to <code class="literal">"TRIM(TRAILING {1} FROM {0})"</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.UseGetBestRowIdentifierForPrimaryKeys">
+                    <p>
+                    <a class="indexterm" name="d5e11148"></a>
+<code class="literal">UseGetBestRowIdentifierForPrimaryKeys</code>: When true, 
+metadata queries will use <code class="methodname">DatabaseMetaData.getBestRowIdentifier
+</code> to obtain information about primary keys, rather than <code class="methodname">
+DatabaseMetaData.getPrimaryKeys</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.UseGetBytesForBlobs">
+                    <p>
+                    <a class="indexterm" name="d5e11157"></a>
+<code class="literal">UseGetBytesForBlobs</code>: When true, <code class="methodname">
+ResultSet.getBytes</code> will be used to obtain blob data rather than
+<code class="methodname">ResultSet.getBinaryStream</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.UseGetObjectForBlobs">
+                    <p>
+                    <a class="indexterm" name="d5e11165"></a>
+<code class="literal">UseGetObjectForBlobs</code>: When true, <code class="methodname">
+ResultSet.getObject</code> will be used to obtain blob data rather than
+<code class="methodname">ResultSet.getBinaryStream</code>.
+                    </p>
+                </li><li class="listitem" id="DBDictionary.UseGetStringForClobs">
+                    <p>
+                    <a class="indexterm" name="d5e11173"></a>

[... 426 lines stripped ...]


Mime
View raw message