blob: 26364cafc5282179ef36bf6c238ea3272cfd711d [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_252) on Fri Jul 16 09:38:53 UTC 2021 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>MySQLPlatform (EclipseLink 3.0.2, API Reference)</title>
<meta name="date" content="2021-07-16">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="MySQLPlatform (EclipseLink 3.0.2, API Reference)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":10,"i36":10,"i37":10,"i38":10,"i39":10,"i40":10,"i41":10,"i42":10,"i43":10,"i44":10,"i45":10,"i46":10,"i47":10,"i48":10,"i49":10,"i50":10,"i51":10,"i52":10,"i53":10,"i54":10,"i55":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage">EclipseLink 3.0.2, API Reference</div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/eclipse/persistence/platform/database/MaxDBPlatform.html" title="class in org.eclipse.persistence.platform.database"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/eclipse/persistence/platform/database/Oracle10Platform.html" title="class in org.eclipse.persistence.platform.database"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/eclipse/persistence/platform/database/MySQLPlatform.html" target="_top">Frames</a></li>
<li><a href="MySQLPlatform.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.org.eclipse.persistence.platform.database.DatabasePlatform">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.eclipse.persistence.platform.database</div>
<h2 title="Class MySQLPlatform" class="title">Class MySQLPlatform</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform</li>
<li>
<ul class="inheritance">
<li>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</li>
<li>
<ul class="inheritance">
<li><a href="../../../../../org/eclipse/persistence/platform/database/DatabasePlatform.html" title="class in org.eclipse.persistence.platform.database">org.eclipse.persistence.platform.database.DatabasePlatform</a></li>
<li>
<ul class="inheritance">
<li>org.eclipse.persistence.platform.database.MySQLPlatform</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Cloneable.html?is-external=true" title="class or interface in java.lang">Cloneable</a>, org.eclipse.persistence.internal.core.databaseaccess.CorePlatform&lt;org.eclipse.persistence.internal.helper.ConversionManager&gt;, org.eclipse.persistence.internal.databaseaccess.Platform</dd>
</dl>
<hr>
<br>
<pre>public class <span class="typeNameLabel">MySQLPlatform</span>
extends <a href="../../../../../org/eclipse/persistence/platform/database/DatabasePlatform.html" title="class in org.eclipse.persistence.platform.database">DatabasePlatform</a></pre>
<div class="block"><p><b>Purpose</b>: Provides MySQL specific behavior.
<p><b>Responsibilities</b>:<ul>
<li> Native SQL for Date, Time, &amp; Timestamp.
<li> Native sequencing.
<li> Mapping of class types to database types for the schema framework.
<li> Pessimistic locking.
<li> Platform specific operators.
</ul></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../serialized-form.html#org.eclipse.persistence.platform.database.MySQLPlatform">Serialized Form</a></dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>OracleAS TopLink 10<i>g</i> (10.1.3)</dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.eclipse.persistence.platform.database.DatabasePlatform">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;org.eclipse.persistence.platform.database.<a href="../../../../../org/eclipse/persistence/platform/database/DatabasePlatform.html" title="class in org.eclipse.persistence.platform.database">DatabasePlatform</a></h3>
<code><a href="../../../../../org/eclipse/persistence/platform/database/DatabasePlatform.html#DEFAULT_VARCHAR_SIZE">DEFAULT_VARCHAR_SIZE</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.eclipse.persistence.internal.databaseaccess.DatabasePlatform">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</h3>
<code>batchWritingMechanism, castSizeForVarcharParameter, classTypes, cursorCode, DEFAULT_MAX_BATCH_WRITING_SIZE, DEFAULT_PARAMETERIZED_MAX_BATCH_WRITING_SIZE, driverName, driverSupportsNationalCharacterVarying, fieldTypes, IS_VALID_TIMEOUT, isCastRequired, maxBatchWritingSize, partitioningCallback, pingSQL, printInnerJoinInWhereClause, printOuterJoinInWhereClause, shouldBindAllParameters, shouldBindLiterals, shouldCacheAllStatements, shouldCreateIndicesOnForeignKeys, shouldForceBindAllParameters, shouldForceFieldNamesToUpperCase, shouldIgnoreCaseOnFieldComparisons, shouldOptimizeDataConversion, shouldTrimStrings, statementCacheSize, storedProcedureTerminationToken, stringBindingSize, structConverters, supportsAutoCommit, tableCreationSuffix, transactionIsolation, typeConverters, useJDBCStoredProcedureSyntax, useNationalCharacterVarying, useRownumFiltering, usesBatchWriting, usesByteArrayBinding, usesJDBCBatchWriting, usesNativeBatchWriting, usesNativeSQL, usesStreamsForBinding, usesStringBinding</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform</h3>
<code>conversionManager, dataTypesConvertedFromAClass, dataTypesConvertedToAClass, defaultNativeSequenceToTable, defaultSeqenceAtNextValue, defaultSequence, endDelimiter, platformOperators, sequences, sequencesLock, startDelimiter, tableQualifier, timestampQuery</code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#MySQLPlatform--">MySQLPlatform</a></span>()</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#appendCalendar-java.util.Calendar-java.io.Writer-">appendCalendar</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Calendar.html?is-external=true" title="class or interface in java.util">Calendar</a>&nbsp;calendar,
<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;writer)</code>
<div class="block">Appends an MySQL specific Timestamp, if usesNativeSQL is true otherwise use the ODBC format.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#appendDate-java.sql.Date-java.io.Writer-">appendDate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/sql/Date.html?is-external=true" title="class or interface in java.sql">Date</a>&nbsp;date,
<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;writer)</code>
<div class="block">Appends an MySQL specific date if usesNativeSQL is true otherwise use the ODBC format.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#appendTime-java.sql.Time-java.io.Writer-">appendTime</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/sql/Time.html?is-external=true" title="class or interface in java.sql">Time</a>&nbsp;time,
<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;writer)</code>
<div class="block">Appends an MySQL specific time if usesNativeSQL is true otherwise use the ODBC format.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#appendTimestamp-java.sql.Timestamp-java.io.Writer-">appendTimestamp</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/sql/Timestamp.html?is-external=true" title="class or interface in java.sql">Timestamp</a>&nbsp;timestamp,
<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;writer)</code>
<div class="block">Appends an MySQL specific Timestamp, if usesNativeSQL is true otherwise use the ODBC format.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Hashtable.html?is-external=true" title="class or interface in java.util">Hashtable</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#buildFieldTypes--">buildFieldTypes</a></span>()</code>
<div class="block">Return the mapping of class types to database types for the schema framework.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#buildProcedureCallString-org.eclipse.persistence.queries.StoredProcedureCall-org.eclipse.persistence.internal.sessions.AbstractSession-org.eclipse.persistence.internal.sessions.AbstractRecord-">buildProcedureCallString</a></span>(<a href="../../../../../org/eclipse/persistence/queries/StoredProcedureCall.html" title="class in org.eclipse.persistence.queries">StoredProcedureCall</a>&nbsp;call,
org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session,
org.eclipse.persistence.internal.sessions.AbstractRecord&nbsp;row)</code>
<div class="block">Return the stored procedure syntax for this platform.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="../../../../../org/eclipse/persistence/queries/ValueReadQuery.html" title="class in org.eclipse.persistence.queries">ValueReadQuery</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#buildSelectQueryForIdentity--">buildSelectQueryForIdentity</a></span>()</code>
<div class="block">INTERNAL:
Build the identity query for native sequencing.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#canBatchWriteWithOptimisticLocking-org.eclipse.persistence.internal.databaseaccess.DatabaseCall-">canBatchWriteWithOptimisticLocking</a></span>(org.eclipse.persistence.internal.databaseaccess.DatabaseCall&nbsp;call)</code>
<div class="block">INTERNAL:
Supports Batch Writing with Optimistic Locking.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#checkTableExists-org.eclipse.persistence.internal.sessions.DatabaseSessionImpl-org.eclipse.persistence.tools.schemaframework.TableDefinition-boolean-">checkTableExists</a></span>(org.eclipse.persistence.internal.sessions.DatabaseSessionImpl&nbsp;session,
<a href="../../../../../org/eclipse/persistence/tools/schemaframework/TableDefinition.html" title="class in org.eclipse.persistence.tools.schemaframework">TableDefinition</a>&nbsp;table,
boolean&nbsp;suppressLogging)</code>
<div class="block">INTERNAL:
Executes and evaluates query to check whether given table exists.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#computeMaxRowsForSQL-int-int-">computeMaxRowsForSQL</a></span>(int&nbsp;firstResultIndex,
int&nbsp;maxResults)</code>
<div class="block">INTERNAL:
Use the JDBC maxResults and firstResultIndex setting to compute a value to use when
limiting the results of a query in SQL.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../org/eclipse/persistence/expressions/ExpressionOperator.html" title="class in org.eclipse.persistence.expressions">ExpressionOperator</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#currentDateOperator--">currentDateOperator</a></span>()</code>
<div class="block">INTERNAL:
Create the current date operator for this platform.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../../org/eclipse/persistence/expressions/ExpressionOperator.html" title="class in org.eclipse.persistence.expressions">ExpressionOperator</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#dateToStringOperator--">dateToStringOperator</a></span>()</code>
<div class="block">INTERNAL:
Build MySQL equivalent to TO_CHAR.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#getConstraintDeletionString--">getConstraintDeletionString</a></span>()</code>
<div class="block">INTERNAL:
Used for constraint deletion.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#getCreateTempTableSqlPrefix--">getCreateTempTableSqlPrefix</a></span>()</code>
<div class="block">INTERNAL:
MySQL temp table syntax, used for update-all, delete-all queries.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#getDropDatabaseSchemaString-java.lang.String-">getDropDatabaseSchemaString</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;schema)</code>
<div class="block">Return the drop schema definition.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#getFunctionCallHeader--">getFunctionCallHeader</a></span>()</code>
<div class="block">Used for stored function calls.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#getInOutputProcedureToken--">getInOutputProcedureToken</a></span>()</code>
<div class="block">INTERNAL:
MySQL uses the INOUT keyword for this.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#getJDBCType-java.lang.Class-">getJDBCType</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;javaType)</code>
<div class="block">Return the JDBC type for the Java type.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#getProcedureAsString--">getProcedureAsString</a></span>()</code>
<div class="block">MySQL does not use the AS token.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#getProcedureBeginString--">getProcedureBeginString</a></span>()</code>
<div class="block">INTERNAL:
MySQL requires BEGIN.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#getProcedureCallHeader--">getProcedureCallHeader</a></span>()</code>
<div class="block">INTERNAL:
Used for stored procedure calls.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#getProcedureCallTail--">getProcedureCallTail</a></span>()</code>
<div class="block">Used for sp calls.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#getProcedureEndString--">getProcedureEndString</a></span>()</code>
<div class="block">INTERNAL:
MySQL requires END.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#getSelectForUpdateString--">getSelectForUpdateString</a></span>()</code>
<div class="block">INTERNAL:
Used for pessimistic locking.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../org/eclipse/persistence/queries/DataReadQuery.html" title="class in org.eclipse.persistence.queries">DataReadQuery</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#getTableExistsQuery-org.eclipse.persistence.tools.schemaframework.TableDefinition-">getTableExistsQuery</a></span>(<a href="../../../../../org/eclipse/persistence/tools/schemaframework/TableDefinition.html" title="class in org.eclipse.persistence.tools.schemaframework">TableDefinition</a>&nbsp;table)</code>
<div class="block">INTERNAL:
Returns query to check whether given table exists.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/eclipse/persistence/queries/ValueReadQuery.html" title="class in org.eclipse.persistence.queries">ValueReadQuery</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#getTimestampQuery--">getTimestampQuery</a></span>()</code>
<div class="block">INTERNAL:
This method returns the query to select the timestamp
from the server for MySQL.</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#getUniqueConstraintDeletionString--">getUniqueConstraintDeletionString</a></span>()</code>
<div class="block">INTERNAL:
Used for unique constraint deletion.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#initializeConnectionData-java.sql.Connection-">initializeConnectionData</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html?is-external=true" title="class or interface in java.sql">Connection</a>&nbsp;connection)</code>
<div class="block">INTERNAL:
Allow initialization from the connection.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#initializePlatformOperators--">initializePlatformOperators</a></span>()</code>
<div class="block">Initialize any platform-specific operators.</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#isForUpdateCompatibleWithDistinct--">isForUpdateCompatibleWithDistinct</a></span>()</code>
<div class="block">INTERNAL:
Indicates whether SELECT DISTINCT ...</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#isFractionalTimeSupported--">isFractionalTimeSupported</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#isMySQL--">isMySQL</a></span>()</code>
<div class="block">Answers whether platform is MySQL.</div>
</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../org/eclipse/persistence/expressions/ExpressionOperator.html" title="class in org.eclipse.persistence.expressions">ExpressionOperator</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#leftTrim2--">leftTrim2</a></span>()</code>
<div class="block">INTERNAL:
Build MySQL equivalent to LTRIM(string_exp, character).</div>
</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../../org/eclipse/persistence/expressions/ExpressionOperator.html" title="class in org.eclipse.persistence.expressions">ExpressionOperator</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#logOperator--">logOperator</a></span>()</code>
<div class="block">INTERNAL:
Create the 10 based log operator for this platform.</div>
</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#printFieldIdentityClause-java.io.Writer-">printFieldIdentityClause</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;writer)</code>
<div class="block">INTERNAL:
Append the receiver's field 'identity' constraint clause to a writer.</div>
</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#printSQLSelectStatement-org.eclipse.persistence.internal.databaseaccess.DatabaseCall-org.eclipse.persistence.internal.expressions.ExpressionSQLPrinter-org.eclipse.persistence.internal.expressions.SQLSelectStatement-">printSQLSelectStatement</a></span>(org.eclipse.persistence.internal.databaseaccess.DatabaseCall&nbsp;call,
org.eclipse.persistence.internal.expressions.ExpressionSQLPrinter&nbsp;printer,
org.eclipse.persistence.internal.expressions.SQLSelectStatement&nbsp;statement)</code>
<div class="block">INTERNAL:
Print the SQL representation of the statement on a stream, storing the fields
in the DatabaseCall.</div>
</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#printStoredFunctionReturnKeyWord-java.io.Writer-">printStoredFunctionReturnKeyWord</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;writer)</code>
<div class="block">INTERNAL:
Prints return keyword for StoredFunctionDefinition:
CREATE FUNCTION StoredFunction_In (P_IN BIGINT)
RETURN BIGINT
The method was introduced because MySQL requires "RETURNS" instead:
CREATE FUNCTION StoredFunction_In (P_IN BIGINT)
RETURNS BIGINT</div>
</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#requiresProcedureBrackets--">requiresProcedureBrackets</a></span>()</code>
<div class="block">Used for stored procedure creation: MySQL platforms need brackets around arguments declaration even if no arguments exist.</div>
</td>
</tr>
<tr id="i38" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#requiresTableInIndexDropDDL--">requiresTableInIndexDropDDL</a></span>()</code>
<div class="block">INTERNAL:
Return if this database requires the table name when dropping an index.</div>
</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../../org/eclipse/persistence/expressions/ExpressionOperator.html" title="class in org.eclipse.persistence.expressions">ExpressionOperator</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#rightTrim2--">rightTrim2</a></span>()</code>
<div class="block">INTERNAL:
Build MySQL equivalent to RTRIM(string_exp, character).</div>
</td>
</tr>
<tr id="i40" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#shouldAlwaysUseTempStorageForModifyAll--">shouldAlwaysUseTempStorageForModifyAll</a></span>()</code>
<div class="block">INTERNAL:
MySQL supports temp tables for update-all, delete-all queries.</div>
</td>
</tr>
<tr id="i41" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#shouldPrintForUpdateClause--">shouldPrintForUpdateClause</a></span>()</code>
<div class="block">INTERNAL:
MySQL FOR UPDATE clause has to be the last</div>
</td>
</tr>
<tr id="i42" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#shouldPrintOutputTokenAtStart--">shouldPrintOutputTokenAtStart</a></span>()</code>
<div class="block">INTERNAL:
MySQL requires the direction at the start of the argument.</div>
</td>
</tr>
<tr id="i43" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#shouldPrintStoredProcedureArgumentNameInCall--">shouldPrintStoredProcedureArgumentNameInCall</a></span>()</code>
<div class="block">INTERNAL:
MySQL stored procedure calls do not require the argument name be printed in the call string
e.g.</div>
</td>
</tr>
<tr id="i44" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#shouldUseJDBCOuterJoinSyntax--">shouldUseJDBCOuterJoinSyntax</a></span>()</code>
<div class="block">INTERNAL:
JDBC defines an outer join syntax which many drivers do not support.</div>
</td>
</tr>
<tr id="i45" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#supportsAutoConversionToNumericForArithmeticOperations--">supportsAutoConversionToNumericForArithmeticOperations</a></span>()</code>
<div class="block">Some db allow VARCHAR db field to be used in arithmetic operations automatically converting them to numeric:
UPDATE OL_PHONE SET PHONE_ORDER_VARCHAR = (PHONE_ORDER_VARCHAR + 1) WHERE ...</div>
</td>
</tr>
<tr id="i46" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#supportsCountDistinctWithMultipleFields--">supportsCountDistinctWithMultipleFields</a></span>()</code>
<div class="block">INTERNAL:
Indicates whether the platform supports the count distinct function with multiple fields.</div>
</td>
</tr>
<tr id="i47" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#supportsGlobalTempTables--">supportsGlobalTempTables</a></span>()</code>
<div class="block">INTERNAL:
MySQL supports temp tables for update-all, delete-all queries.</div>
</td>
</tr>
<tr id="i48" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#supportsIdentity--">supportsIdentity</a></span>()</code>
<div class="block">INTERNAL:
Indicates whether the platform supports identity.</div>
</td>
</tr>
<tr id="i49" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#supportsIndividualTableLocking--">supportsIndividualTableLocking</a></span>()</code>
<div class="block">INTERNAL:
Indicates whether locking clause could be selectively applied only to some tables in a ReadQuery.</div>
</td>
</tr>
<tr id="i50" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#supportsStoredFunctions--">supportsStoredFunctions</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i51" class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../../org/eclipse/persistence/expressions/ExpressionOperator.html" title="class in org.eclipse.persistence.expressions">ExpressionOperator</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#toCharOperator--">toCharOperator</a></span>()</code>
<div class="block">INTERNAL:
Build MySQL equivalent to TO_CHAR.</div>
</td>
</tr>
<tr id="i52" class="altColor">
<td class="colFirst"><code>protected <a href="../../../../../org/eclipse/persistence/expressions/ExpressionOperator.html" title="class in org.eclipse.persistence.expressions">ExpressionOperator</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#toDateOperator--">toDateOperator</a></span>()</code>
<div class="block">INTERNAL:
Build MySQL equivalent to TO_DATE.</div>
</td>
</tr>
<tr id="i53" class="rowColor">
<td class="colFirst"><code>protected <a href="../../../../../org/eclipse/persistence/expressions/ExpressionOperator.html" title="class in org.eclipse.persistence.expressions">ExpressionOperator</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#toNumberOperator--">toNumberOperator</a></span>()</code>
<div class="block">INTERNAL:
Build MySQL equivalent to TO_NUMBER.</div>
</td>
</tr>
<tr id="i54" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#writeDeleteFromTargetTableUsingTempTableSql-java.io.Writer-org.eclipse.persistence.internal.helper.DatabaseTable-org.eclipse.persistence.internal.helper.DatabaseTable-java.util.Collection-java.util.Collection-org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform-">writeDeleteFromTargetTableUsingTempTableSql</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;writer,
org.eclipse.persistence.internal.helper.DatabaseTable&nbsp;table,
org.eclipse.persistence.internal.helper.DatabaseTable&nbsp;targetTable,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&nbsp;pkFields,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&nbsp;targetPkFields,
org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform&nbsp;platform)</code>
<div class="block">INTERNAL:
Writes MySQL specific SQL for accessing temp tables for delete-all queries.</div>
</td>
</tr>
<tr id="i55" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html#writeUpdateOriginalFromTempTableSql-java.io.Writer-org.eclipse.persistence.internal.helper.DatabaseTable-java.util.Collection-java.util.Collection-">writeUpdateOriginalFromTempTableSql</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;writer,
org.eclipse.persistence.internal.helper.DatabaseTable&nbsp;table,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&nbsp;pkFields,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&nbsp;assignedFields)</code>
<div class="block">INTERNAL:
Writes MySQL specific SQL for accessing temp tables for update-all queries.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.eclipse.persistence.internal.databaseaccess.DatabasePlatform">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</h3>
<code>addBatch, addStructConverter, allowsSizeInProcedureArguments, appendBoolean, appendByteArray, appendLiteralToCall, appendLiteralToCallWithBinding, appendNumber, appendParameter, appendParameterInternal, appendString, autoCommit, beginTransaction, buildBatchCriteria, buildBatchCriteriaForComplexId, buildCallWithReturning, buildClassTypes, buildCreateIndex, buildCreateIndex, buildDropIndex, buildDropIndex, buildSequenceObjectAlterIncrementWriter, buildSequenceObjectCreationWriter, buildSequenceObjectDeletionWriter, canBuildCallWithReturning, commitTransaction, convertToDatabaseType, copyInto, createArray, createArray, createPlatformDefaultSequence, createStruct, createStruct, dontBindUpdateAllQueryUsingTempTables, executeBatch, executeStoredProcedure, freeTemporaryObject, getAssignmentString, getBatchBeginString, getBatchDelimiterString, getBatchEndString, getBatchRowCountAssignString, getBatchRowCountDeclareString, getBatchRowCountReturnString, getBatchWritingMechanism, getCastSizeForVarcharParameter, getClassTypes, getConnection, getConnectionUserName, getCreateDatabaseSchemaString, getCreateTempTableSqlBodyForTable, getCreateTempTableSqlSuffix, getCreateViewString, getCreationInOutputProcedureToken, getCreationOutputProcedureToken, getCursorCode, getCustomModifyValueForCall, getDefaultSequenceTableName, getDriverSupportsNVarChar, getDropCascadeString, getFieldTypeDefinition, getFieldTypes, getIndexNamePrefix, getInputProcedureToken, getJDBCOuterJoinString, getJDBCType, getJDBCTypeForSetNull, getJdbcTypeName, getMaxBatchWritingSize, getMaxFieldNameSize, getMaxForeignKeyNameSize, getMaxIndexNameSize, getMaxUniqueKeyNameSize, getNoWaitString, getObjectFromResultSet, getOutputProcedureToken, getParameterValueFromDatabaseCall, getParameterValueFromDatabaseCall, getPartitioningCallback, getPingSQL, getProcedureArgument, getProcedureArgumentString, getProcedureOptionList, getQualifiedName, getQualifiedSequenceTableName, getRefValue, getRefValue, getSelectForUpdateNoWaitString, getSelectForUpdateOfString, getSelectForUpdateWaitString, getSequenceCounterFieldName, getSequenceNameFieldName, getSequencePreallocationSize, getSequenceTableName, getStatementCacheSize, getStoredProcedureParameterPrefix, getStoredProcedureTerminationToken, getStringBindingSize, getStructConverters, getTableCreationSuffix, getTempTableForTable, getTransactionIsolation, getTypeConverters, getUseNationalCharacterVaryingTypeForString, getVPDClearIdentifierQuery, getVPDCreationFunctionString, getVPDCreationPolicyString, getVPDDeletionString, getVPDSetIdentifierQuery, hasPartitioningCallback, initialize, isAlterSequenceObjectSupported, isCastRequired, isDynamicSQLRequiredForFunctions, isInformixOuterJoin, isJDBCExecuteCompliant, isLobCompatibleWithDistinct, isLockTimeoutException, isNullAllowedInSelectClause, isOutputAllowWithResultSet, isRowCountOutputParameterRequired, isXDBDocument, maximumNumericValues, minimumNumericValues, minimumTimeIncrement, prepareBatchStatement, printFieldNotNullClause, printFieldNullClause, printFieldTypeSize, printFieldTypeSize, printFieldUnique, printFieldUnique, printValuelist, printValuelist, registerOutputParameter, registerOutputParameter, registerOutputParameter, registerOutputParameter, requiresNamedPrimaryKeyConstraints, requiresProcedureCallBrackets, requiresProcedureCallOuputToken, requiresTypeNameToRegisterOutputParameter, requiresUniqueConstraintCreationOnTableCreate, retrieveFirstPrimaryKeyOrOne, rollbackTransaction, setBatchWritingMechanism, setCastSizeForVarcharParameter, setClassTypes, setCursorCode, setDriverName, setDriverSupportsNVarChar, setFieldTypes, setIsCastRequired, setMaxBatchWritingSize, setNullFromDatabaseField, setNullFromDatabaseField, setParameterValueInDatabaseCall, setParameterValueInDatabaseCall, setPartitioningCallback, setPingSQL, setPrintInnerJoinInWhereClause, setPrintOuterJoinInWhereClause, setSequenceCounterFieldName, setSequenceNameFieldName, setSequenceTableName, setShouldBindAllParameters, setShouldBindLiterals, setShouldCacheAllStatements, setShouldCreateIndicesOnForeignKeys, setShouldForceBindAllParameters, setShouldForceFieldNamesToUpperCase, setShouldIgnoreCaseOnFieldComparisons, setShouldOptimizeDataConversion, setShouldTrimStrings, setShouldUseRownumFiltering, setStatementCacheSize, setStoredProcedureTerminationToken, setStringBindingSize, setSupportsAutoCommit, setTableCreationSuffix, setTransactionIsolation, setUseJDBCStoredProcedureSyntax, setUseNationalCharacterVaryingTypeForString, setUsesBatchWriting, setUsesByteArrayBinding, setUsesJDBCBatchWriting, setUsesNativeBatchWriting, setUsesNativeSQL, setUsesStreamsForBinding, setUsesStringBinding, shouldBindAllParameters, shouldBindLiterals, shouldCacheAllStatements, shouldCreateIndicesForPrimaryKeys, shouldCreateIndicesOnForeignKeys, shouldCreateIndicesOnUniqueKeys, shouldForceBindAllParameters, shouldForceFieldNamesToUpperCase, shouldIgnoreCaseOnFieldComparisons, shouldIgnoreException, shouldOptimizeDataConversion, shouldPrintAliasForUpdate, shouldPrintConstraintNameAfter, shouldPrintFieldIdentityClause, shouldPrintInnerJoinInWhereClause, shouldPrintInOutputTokenBeforeType, shouldPrintInputTokenAtStart, shouldPrintLockingClauseAfterWhereClause, shouldPrintOuterJoinInWhereClause, shouldPrintOutputTokenBeforeType, shouldPrintStoredProcedureVariablesAfterBeginString, shouldTempTableSpecifyPrimaryKeys, shouldTrimStrings, shouldUseCustomModifyForCall, shouldUseGetSetNString, shouldUseRownumFiltering, supportsANSIInnerJoinSyntax, supportsAutoCommit, supportsConnectionUserName, supportsDeleteOnCascade, supportsForeignKeyConstraints, supportsIndexes, supportsLocalTempTables, supportsLockingQueriesWithMultipleTables, supportsNestingOuterJoins, supportsOuterJoinsWithBrackets, supportsPrimaryKeyConstraint, supportsTempTables, supportsUniqueColumns, supportsUniqueKeyConstraints, supportsVPD, supportsWaitForUpdate, usesBatchWriting, usesByteArrayBinding, usesJDBCBatchWriting, usesNativeBatchWriting, usesNativeSQL, usesSequenceTable, usesStreamsForBinding, usesStringBinding, wasFailureCommunicationBased, writeAddColumnClause, writeAutoAssignmentSetClause, writeAutoJoinWhereClause, writeCleanUpTempTableSql, writeCreateTempTableSql, writeFields, writeFieldsAutoClause, writeFieldsList, writeInsertIntoTableSql, writeJoinWhereClause, writeLOB, writeParameterMarker, writeTableCreationSuffix</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform</h3>
<code>addOperator, addSequence, addSequence, buildNativeCall, buildSelectQueryForIdentity, buildSelectQueryForSequenceObject, buildSelectQueryForSequenceObject, clone, convertObject, createConnectionCustomizer, createExpressionFor, getConversionManager, getDataTypesConvertedFrom, getDataTypesConvertedTo, getDefaultNativeSequenceToTable, getDefaultSeqenceAtNextValue, getDefaultSequence, getDefaultSequenceToWrite, getEndDelimiter, getINClauseLimit, getOperator, getPlatformOperators, getSelectSequenceQuery, getSequence, getSequences, getSequencesToWrite, getStartDelimiter, getTableQualifier, getTimestampFromServer, getUpdateSequenceQuery, hasDefaultSequence, initializeDefaultQueries, initIdentitySequences, isAccess, isAttunity, isCloudscape, isDB2, isDB2Z, isDBase, isDerby, isFirebird, isH2, isHANA, isHSQL, isInformix, isMaxDB, isODBC, isOracle, isOracle12, isOracle9, isPervasive, isPointBase, isPostgreSQL, isSQLAnywhere, isSQLServer, isSybase, isSymfoware, isTimesTen, isTimesTen7, removeAllSequences, removeIdentitySequences, removeSequence, sequencesAfterCloneCleanup, setConversionManager, setDefaultNativeSequenceToTable, setDefaultSeqenceAtNextValue, setDefaultSequence, setEndDelimiter, setSelectSequenceNumberQuery, setSequencePreallocationSize, setSequences, setStartDelimiter, setTableQualifier, setTimestampQuery, setUpdateSequenceQuery, shouldNativeSequenceUseTransaction, shouldPrepare, shouldSelectDistinctIncludeOrderBy, shouldSelectIncludeOrderBy, supportsNativeSequenceNumbers, supportsSequenceObjects, toString, usesPlatformDefaultSequence</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="MySQLPlatform--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>MySQLPlatform</h4>
<pre>public&nbsp;MySQLPlatform()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="initializeConnectionData-java.sql.Connection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initializeConnectionData</h4>
<pre>public&nbsp;void&nbsp;initializeConnectionData(<a href="https://docs.oracle.com/javase/8/docs/api/java/sql/Connection.html?is-external=true" title="class or interface in java.sql">Connection</a>&nbsp;connection)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/sql/SQLException.html?is-external=true" title="class or interface in java.sql">SQLException</a></pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></span></div>
<div class="block">INTERNAL:
Allow initialization from the connection.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>initializeConnectionData</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/sql/SQLException.html?is-external=true" title="class or interface in java.sql">SQLException</a></code></dd>
</dl>
</li>
</ul>
<a name="isFractionalTimeSupported--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isFractionalTimeSupported</h4>
<pre>public&nbsp;boolean&nbsp;isFractionalTimeSupported()</pre>
</li>
</ul>
<a name="appendDate-java.sql.Date-java.io.Writer-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>appendDate</h4>
<pre>protected&nbsp;void&nbsp;appendDate(<a href="https://docs.oracle.com/javase/8/docs/api/java/sql/Date.html?is-external=true" title="class or interface in java.sql">Date</a>&nbsp;date,
<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;writer)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Appends an MySQL specific date if usesNativeSQL is true otherwise use the ODBC format.
Native FORMAT: 'YYYY-MM-DD'</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>appendDate</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="appendTime-java.sql.Time-java.io.Writer-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>appendTime</h4>
<pre>protected&nbsp;void&nbsp;appendTime(<a href="https://docs.oracle.com/javase/8/docs/api/java/sql/Time.html?is-external=true" title="class or interface in java.sql">Time</a>&nbsp;time,
<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;writer)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Appends an MySQL specific time if usesNativeSQL is true otherwise use the ODBC format.
Native FORMAT: 'HH:MM:SS'.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>appendTime</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="appendTimestamp-java.sql.Timestamp-java.io.Writer-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>appendTimestamp</h4>
<pre>protected&nbsp;void&nbsp;appendTimestamp(<a href="https://docs.oracle.com/javase/8/docs/api/java/sql/Timestamp.html?is-external=true" title="class or interface in java.sql">Timestamp</a>&nbsp;timestamp,
<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;writer)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Appends an MySQL specific Timestamp, if usesNativeSQL is true otherwise use the ODBC format.
Native Format: 'YYYY-MM-DD HH:MM:SS'</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>appendTimestamp</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="appendCalendar-java.util.Calendar-java.io.Writer-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>appendCalendar</h4>
<pre>protected&nbsp;void&nbsp;appendCalendar(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Calendar.html?is-external=true" title="class or interface in java.util">Calendar</a>&nbsp;calendar,
<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;writer)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">Appends an MySQL specific Timestamp, if usesNativeSQL is true otherwise use the ODBC format.
Native Format: 'YYYY-MM-DD HH:MM:SS'</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>appendCalendar</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="buildFieldTypes--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildFieldTypes</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Hashtable.html?is-external=true" title="class or interface in java.util">Hashtable</a>&nbsp;buildFieldTypes()</pre>
<div class="block">Return the mapping of class types to database types for the schema framework.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>buildFieldTypes</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="getJDBCType-java.lang.Class-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getJDBCType</h4>
<pre>public&nbsp;int&nbsp;getJDBCType(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&nbsp;javaType)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></span></div>
<div class="block">Return the JDBC type for the Java type.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getJDBCType</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="buildSelectQueryForIdentity--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildSelectQueryForIdentity</h4>
<pre>public&nbsp;<a href="../../../../../org/eclipse/persistence/queries/ValueReadQuery.html" title="class in org.eclipse.persistence.queries">ValueReadQuery</a>&nbsp;buildSelectQueryForIdentity()</pre>
<div class="block">INTERNAL:
Build the identity query for native sequencing.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>buildSelectQueryForIdentity</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform</code></dd>
</dl>
</li>
</ul>
<a name="buildProcedureCallString-org.eclipse.persistence.queries.StoredProcedureCall-org.eclipse.persistence.internal.sessions.AbstractSession-org.eclipse.persistence.internal.sessions.AbstractRecord-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>buildProcedureCallString</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;buildProcedureCallString(<a href="../../../../../org/eclipse/persistence/queries/StoredProcedureCall.html" title="class in org.eclipse.persistence.queries">StoredProcedureCall</a>&nbsp;call,
org.eclipse.persistence.internal.sessions.AbstractSession&nbsp;session,
org.eclipse.persistence.internal.sessions.AbstractRecord&nbsp;row)</pre>
<div class="block">Return the stored procedure syntax for this platform.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>buildProcedureCallString</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="computeMaxRowsForSQL-int-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>computeMaxRowsForSQL</h4>
<pre>public&nbsp;int&nbsp;computeMaxRowsForSQL(int&nbsp;firstResultIndex,
int&nbsp;maxResults)</pre>
<div class="block">INTERNAL:
Use the JDBC maxResults and firstResultIndex setting to compute a value to use when
limiting the results of a query in SQL. These limits tend to be used in two ways.
1. MaxRows is the index of the last row to be returned (like JDBC maxResults)
2. MaxRows is the number of rows to be returned
MySQL uses case #2 and therefore the maxResults has to be altered based on the firstResultIndex</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>computeMaxRowsForSQL</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>firstResultIndex</code> - </dd>
<dd><code>maxResults</code> - </dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../org/eclipse/persistence/platform/database/MySQLPlatform.html" title="class in org.eclipse.persistence.platform.database"><code>MySQLPlatform</code></a></dd>
</dl>
</li>
</ul>
<a name="canBatchWriteWithOptimisticLocking-org.eclipse.persistence.internal.databaseaccess.DatabaseCall-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>canBatchWriteWithOptimisticLocking</h4>
<pre>public&nbsp;boolean&nbsp;canBatchWriteWithOptimisticLocking(org.eclipse.persistence.internal.databaseaccess.DatabaseCall&nbsp;call)</pre>
<div class="block">INTERNAL:
Supports Batch Writing with Optimistic Locking.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>canBatchWriteWithOptimisticLocking</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="getConstraintDeletionString--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getConstraintDeletionString</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getConstraintDeletionString()</pre>
<div class="block">INTERNAL:
Used for constraint deletion.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getConstraintDeletionString</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="getUniqueConstraintDeletionString--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getUniqueConstraintDeletionString</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getUniqueConstraintDeletionString()</pre>
<div class="block">INTERNAL:
Used for unique constraint deletion.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getUniqueConstraintDeletionString</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="getFunctionCallHeader--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFunctionCallHeader</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getFunctionCallHeader()</pre>
<div class="block">Used for stored function calls.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getFunctionCallHeader</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="getProcedureCallTail--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getProcedureCallTail</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getProcedureCallTail()</pre>
<div class="block">Used for sp calls.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getProcedureCallTail</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="getSelectForUpdateString--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSelectForUpdateString</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getSelectForUpdateString()</pre>
<div class="block">INTERNAL:
Used for pessimistic locking.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getSelectForUpdateString</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="isForUpdateCompatibleWithDistinct--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isForUpdateCompatibleWithDistinct</h4>
<pre>public&nbsp;boolean&nbsp;isForUpdateCompatibleWithDistinct()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></span></div>
<div class="block">INTERNAL:
Indicates whether SELECT DISTINCT ... FOR UPDATE is allowed by the platform (Oracle doesn't allow this).</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>isForUpdateCompatibleWithDistinct</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="getTimestampQuery--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTimestampQuery</h4>
<pre>public&nbsp;<a href="../../../../../org/eclipse/persistence/queries/ValueReadQuery.html" title="class in org.eclipse.persistence.queries">ValueReadQuery</a>&nbsp;getTimestampQuery()</pre>
<div class="block">INTERNAL:
This method returns the query to select the timestamp
from the server for MySQL.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>getTimestampQuery</code>&nbsp;in interface&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.Platform</code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getTimestampQuery</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform</code></dd>
</dl>
</li>
</ul>
<a name="isMySQL--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isMySQL</h4>
<pre>public&nbsp;boolean&nbsp;isMySQL()</pre>
<div class="block">Answers whether platform is MySQL.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>isMySQL</code>&nbsp;in interface&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.Platform</code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>isMySQL</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform</code></dd>
</dl>
</li>
</ul>
<a name="initializePlatformOperators--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initializePlatformOperators</h4>
<pre>protected&nbsp;void&nbsp;initializePlatformOperators()</pre>
<div class="block">Initialize any platform-specific operators.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>initializePlatformOperators</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform</code></dd>
</dl>
</li>
</ul>
<a name="logOperator--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>logOperator</h4>
<pre>protected&nbsp;<a href="../../../../../org/eclipse/persistence/expressions/ExpressionOperator.html" title="class in org.eclipse.persistence.expressions">ExpressionOperator</a>&nbsp;logOperator()</pre>
<div class="block">INTERNAL:
Create the 10 based log operator for this platform.</div>
</li>
</ul>
<a name="toNumberOperator--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toNumberOperator</h4>
<pre>protected&nbsp;<a href="../../../../../org/eclipse/persistence/expressions/ExpressionOperator.html" title="class in org.eclipse.persistence.expressions">ExpressionOperator</a>&nbsp;toNumberOperator()</pre>
<div class="block">INTERNAL:
Build MySQL equivalent to TO_NUMBER.</div>
</li>
</ul>
<a name="toDateOperator--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toDateOperator</h4>
<pre>protected&nbsp;<a href="../../../../../org/eclipse/persistence/expressions/ExpressionOperator.html" title="class in org.eclipse.persistence.expressions">ExpressionOperator</a>&nbsp;toDateOperator()</pre>
<div class="block">INTERNAL:
Build MySQL equivalent to TO_DATE.</div>
</li>
</ul>
<a name="toCharOperator--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toCharOperator</h4>
<pre>protected&nbsp;<a href="../../../../../org/eclipse/persistence/expressions/ExpressionOperator.html" title="class in org.eclipse.persistence.expressions">ExpressionOperator</a>&nbsp;toCharOperator()</pre>
<div class="block">INTERNAL:
Build MySQL equivalent to TO_CHAR.</div>
</li>
</ul>
<a name="dateToStringOperator--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dateToStringOperator</h4>
<pre>protected&nbsp;<a href="../../../../../org/eclipse/persistence/expressions/ExpressionOperator.html" title="class in org.eclipse.persistence.expressions">ExpressionOperator</a>&nbsp;dateToStringOperator()</pre>
<div class="block">INTERNAL:
Build MySQL equivalent to TO_CHAR.</div>
</li>
</ul>
<a name="leftTrim2--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>leftTrim2</h4>
<pre>protected&nbsp;<a href="../../../../../org/eclipse/persistence/expressions/ExpressionOperator.html" title="class in org.eclipse.persistence.expressions">ExpressionOperator</a>&nbsp;leftTrim2()</pre>
<div class="block">INTERNAL:
Build MySQL equivalent to LTRIM(string_exp, character).
MySQL: TRIM(LEADING character FROM string_exp)</div>
</li>
</ul>
<a name="rightTrim2--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rightTrim2</h4>
<pre>protected&nbsp;<a href="../../../../../org/eclipse/persistence/expressions/ExpressionOperator.html" title="class in org.eclipse.persistence.expressions">ExpressionOperator</a>&nbsp;rightTrim2()</pre>
<div class="block">INTERNAL:
Build MySQL equivalent to RTRIM(string_exp, character).
MySQL: TRIM(TRAILING character FROM string_exp)</div>
</li>
</ul>
<a name="currentDateOperator--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>currentDateOperator</h4>
<pre>protected&nbsp;<a href="../../../../../org/eclipse/persistence/expressions/ExpressionOperator.html" title="class in org.eclipse.persistence.expressions">ExpressionOperator</a>&nbsp;currentDateOperator()</pre>
<div class="block">INTERNAL:
Create the current date operator for this platform.</div>
</li>
</ul>
<a name="printFieldIdentityClause-java.io.Writer-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printFieldIdentityClause</h4>
<pre>public&nbsp;void&nbsp;printFieldIdentityClause(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;writer)
throws <a href="../../../../../org/eclipse/persistence/exceptions/ValidationException.html" title="class in org.eclipse.persistence.exceptions">ValidationException</a></pre>
<div class="block">INTERNAL:
Append the receiver's field 'identity' constraint clause to a writer.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>printFieldIdentityClause</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../../org/eclipse/persistence/exceptions/ValidationException.html" title="class in org.eclipse.persistence.exceptions">ValidationException</a></code></dd>
</dl>
</li>
</ul>
<a name="shouldUseJDBCOuterJoinSyntax--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldUseJDBCOuterJoinSyntax</h4>
<pre>public&nbsp;boolean&nbsp;shouldUseJDBCOuterJoinSyntax()</pre>
<div class="block">INTERNAL:
JDBC defines an outer join syntax which many drivers do not support. So we normally avoid it.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>shouldUseJDBCOuterJoinSyntax</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="supportsIdentity--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>supportsIdentity</h4>
<pre>public&nbsp;boolean&nbsp;supportsIdentity()</pre>
<div class="block">INTERNAL:
Indicates whether the platform supports identity.
MySQL supports native sequencing through AUTO_INCREMENT field types.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>supportsIdentity</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform</code></dd>
</dl>
</li>
</ul>
<a name="supportsCountDistinctWithMultipleFields--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>supportsCountDistinctWithMultipleFields</h4>
<pre>public&nbsp;boolean&nbsp;supportsCountDistinctWithMultipleFields()</pre>
<div class="block">INTERNAL:
Indicates whether the platform supports the count distinct function with multiple fields.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>supportsCountDistinctWithMultipleFields</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="requiresTableInIndexDropDDL--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>requiresTableInIndexDropDDL</h4>
<pre>public&nbsp;boolean&nbsp;requiresTableInIndexDropDDL()</pre>
<div class="block">INTERNAL:
Return if this database requires the table name when dropping an index.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>requiresTableInIndexDropDDL</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="supportsGlobalTempTables--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>supportsGlobalTempTables</h4>
<pre>public&nbsp;boolean&nbsp;supportsGlobalTempTables()</pre>
<div class="block">INTERNAL:
MySQL supports temp tables for update-all, delete-all queries.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>supportsGlobalTempTables</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="supportsIndividualTableLocking--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>supportsIndividualTableLocking</h4>
<pre>public&nbsp;boolean&nbsp;supportsIndividualTableLocking()</pre>
<div class="block">INTERNAL:
Indicates whether locking clause could be selectively applied only to some tables in a ReadQuery.
Example: the following locks the rows in SALARY table, doesn't lock the rows in EMPLOYEE table:
on Oracle platform (method returns true):
SELECT t0.EMP_ID..., t1.SALARY FROM EMPLOYEE t0, SALARY t1 WHERE ... FOR UPDATE t1.SALARY
on SQLServer platform (method returns true):
SELECT t0.EMP_ID..., t1.SALARY FROM EMPLOYEE t0, SALARY t1 WITH (UPDLOCK) WHERE ...</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>supportsIndividualTableLocking</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="supportsStoredFunctions--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>supportsStoredFunctions</h4>
<pre>public&nbsp;boolean&nbsp;supportsStoredFunctions()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>supportsStoredFunctions</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="supportsAutoConversionToNumericForArithmeticOperations--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>supportsAutoConversionToNumericForArithmeticOperations</h4>
<pre>public&nbsp;boolean&nbsp;supportsAutoConversionToNumericForArithmeticOperations()</pre>
<div class="block">Some db allow VARCHAR db field to be used in arithmetic operations automatically converting them to numeric:
UPDATE OL_PHONE SET PHONE_ORDER_VARCHAR = (PHONE_ORDER_VARCHAR + 1) WHERE ...
SELECT ... WHERE ... t0.MANAGED_ORDER_VARCHAR BETWEEN 1 AND 4 ...</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>supportsAutoConversionToNumericForArithmeticOperations</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="getCreateTempTableSqlPrefix--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCreateTempTableSqlPrefix</h4>
<pre>protected&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getCreateTempTableSqlPrefix()</pre>
<div class="block">INTERNAL:
MySQL temp table syntax, used for update-all, delete-all queries.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getCreateTempTableSqlPrefix</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="getDropDatabaseSchemaString-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDropDatabaseSchemaString</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getDropDatabaseSchemaString(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;schema)</pre>
<div class="block">Return the drop schema definition. Subclasses should override as needed.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getDropDatabaseSchemaString</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="shouldAlwaysUseTempStorageForModifyAll--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldAlwaysUseTempStorageForModifyAll</h4>
<pre>public&nbsp;boolean&nbsp;shouldAlwaysUseTempStorageForModifyAll()</pre>
<div class="block">INTERNAL:
MySQL supports temp tables for update-all, delete-all queries.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>shouldAlwaysUseTempStorageForModifyAll</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="shouldPrintStoredProcedureArgumentNameInCall--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldPrintStoredProcedureArgumentNameInCall</h4>
<pre>public&nbsp;boolean&nbsp;shouldPrintStoredProcedureArgumentNameInCall()</pre>
<div class="block">INTERNAL:
MySQL stored procedure calls do not require the argument name be printed in the call string
e.g. call MyStoredProc(?) instead of call MyStoredProc(myvariable = ?)</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>shouldPrintStoredProcedureArgumentNameInCall</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="shouldPrintForUpdateClause--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldPrintForUpdateClause</h4>
<pre>public&nbsp;boolean&nbsp;shouldPrintForUpdateClause()</pre>
<div class="block">INTERNAL:
MySQL FOR UPDATE clause has to be the last</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>shouldPrintForUpdateClause</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="getInOutputProcedureToken--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getInOutputProcedureToken</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getInOutputProcedureToken()</pre>
<div class="block">INTERNAL:
MySQL uses the INOUT keyword for this.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getInOutputProcedureToken</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="getProcedureAsString--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getProcedureAsString</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getProcedureAsString()</pre>
<div class="block">MySQL does not use the AS token.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getProcedureAsString</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="shouldPrintOutputTokenAtStart--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldPrintOutputTokenAtStart</h4>
<pre>public&nbsp;boolean&nbsp;shouldPrintOutputTokenAtStart()</pre>
<div class="block">INTERNAL:
MySQL requires the direction at the start of the argument.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>shouldPrintOutputTokenAtStart</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="getProcedureCallHeader--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getProcedureCallHeader</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getProcedureCallHeader()</pre>
<div class="block">INTERNAL:
Used for stored procedure calls.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getProcedureCallHeader</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="getProcedureBeginString--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getProcedureBeginString</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getProcedureBeginString()</pre>
<div class="block">INTERNAL:
MySQL requires BEGIN.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getProcedureBeginString</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="getProcedureEndString--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getProcedureEndString</h4>
<pre>public&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getProcedureEndString()</pre>
<div class="block">INTERNAL:
MySQL requires END.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getProcedureEndString</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="writeUpdateOriginalFromTempTableSql-java.io.Writer-org.eclipse.persistence.internal.helper.DatabaseTable-java.util.Collection-java.util.Collection-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>writeUpdateOriginalFromTempTableSql</h4>
<pre>public&nbsp;void&nbsp;writeUpdateOriginalFromTempTableSql(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;writer,
org.eclipse.persistence.internal.helper.DatabaseTable&nbsp;table,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&nbsp;pkFields,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&nbsp;assignedFields)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">INTERNAL:
Writes MySQL specific SQL for accessing temp tables for update-all queries.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>writeUpdateOriginalFromTempTableSql</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>writer</code> - for writing the sql</dd>
<dd><code>table</code> - is original table for which temp table is created.</dd>
<dd><code>pkFields</code> - primary key fields for the original table.</dd>
<dd><code>assignedFields</code> - fields to be assigned a new value.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="writeDeleteFromTargetTableUsingTempTableSql-java.io.Writer-org.eclipse.persistence.internal.helper.DatabaseTable-org.eclipse.persistence.internal.helper.DatabaseTable-java.util.Collection-java.util.Collection-org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>writeDeleteFromTargetTableUsingTempTableSql</h4>
<pre>public&nbsp;void&nbsp;writeDeleteFromTargetTableUsingTempTableSql(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;writer,
org.eclipse.persistence.internal.helper.DatabaseTable&nbsp;table,
org.eclipse.persistence.internal.helper.DatabaseTable&nbsp;targetTable,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&nbsp;pkFields,
<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&nbsp;targetPkFields,
org.eclipse.persistence.internal.databaseaccess.DatasourcePlatform&nbsp;platform)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">INTERNAL:
Writes MySQL specific SQL for accessing temp tables for delete-all queries.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>writeDeleteFromTargetTableUsingTempTableSql</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>writer</code> - for writing the sql</dd>
<dd><code>table</code> - is original table for which temp table is created.</dd>
<dd><code>targetTable</code> - is a table from which to delete.</dd>
<dd><code>pkFields</code> - primary key fields for the original table.</dd>
<dd><code>targetPkFields</code> - primary key fields for the target table.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="printSQLSelectStatement-org.eclipse.persistence.internal.databaseaccess.DatabaseCall-org.eclipse.persistence.internal.expressions.ExpressionSQLPrinter-org.eclipse.persistence.internal.expressions.SQLSelectStatement-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printSQLSelectStatement</h4>
<pre>public&nbsp;void&nbsp;printSQLSelectStatement(org.eclipse.persistence.internal.databaseaccess.DatabaseCall&nbsp;call,
org.eclipse.persistence.internal.expressions.ExpressionSQLPrinter&nbsp;printer,
org.eclipse.persistence.internal.expressions.SQLSelectStatement&nbsp;statement)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></span></div>
<div class="block">INTERNAL:
Print the SQL representation of the statement on a stream, storing the fields
in the DatabaseCall.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>printSQLSelectStatement</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="requiresProcedureBrackets--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>requiresProcedureBrackets</h4>
<pre>public&nbsp;boolean&nbsp;requiresProcedureBrackets()</pre>
<div class="block">Used for stored procedure creation: MySQL platforms need brackets around arguments declaration even if no arguments exist.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>requiresProcedureBrackets</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
</dl>
</li>
</ul>
<a name="printStoredFunctionReturnKeyWord-java.io.Writer-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>printStoredFunctionReturnKeyWord</h4>
<pre>public&nbsp;void&nbsp;printStoredFunctionReturnKeyWord(<a href="https://docs.oracle.com/javase/8/docs/api/java/io/Writer.html?is-external=true" title="class or interface in java.io">Writer</a>&nbsp;writer)
throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block">INTERNAL:
Prints return keyword for StoredFunctionDefinition:
CREATE FUNCTION StoredFunction_In (P_IN BIGINT)
RETURN BIGINT
The method was introduced because MySQL requires "RETURNS" instead:
CREATE FUNCTION StoredFunction_In (P_IN BIGINT)
RETURNS BIGINT</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>printStoredFunctionReturnKeyWord</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
</dl>
</li>
</ul>
<a name="getTableExistsQuery-org.eclipse.persistence.tools.schemaframework.TableDefinition-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTableExistsQuery</h4>
<pre>protected&nbsp;<a href="../../../../../org/eclipse/persistence/queries/DataReadQuery.html" title="class in org.eclipse.persistence.queries">DataReadQuery</a>&nbsp;getTableExistsQuery(<a href="../../../../../org/eclipse/persistence/tools/schemaframework/TableDefinition.html" title="class in org.eclipse.persistence.tools.schemaframework">TableDefinition</a>&nbsp;table)</pre>
<div class="block">INTERNAL:
Returns query to check whether given table exists.
Query execution returns a row when table exists or empty result otherwise.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>getTableExistsQuery</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>table</code> - database table meta-data</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>query to check whether given table exists</dd>
</dl>
</li>
</ul>
<a name="checkTableExists-org.eclipse.persistence.internal.sessions.DatabaseSessionImpl-org.eclipse.persistence.tools.schemaframework.TableDefinition-boolean-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>checkTableExists</h4>
<pre>public&nbsp;boolean&nbsp;checkTableExists(org.eclipse.persistence.internal.sessions.DatabaseSessionImpl&nbsp;session,
<a href="../../../../../org/eclipse/persistence/tools/schemaframework/TableDefinition.html" title="class in org.eclipse.persistence.tools.schemaframework">TableDefinition</a>&nbsp;table,
boolean&nbsp;suppressLogging)</pre>
<div class="block">INTERNAL:
Executes and evaluates query to check whether given table exists.
Returned value depends on returned result set being empty or not.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code>checkTableExists</code>&nbsp;in class&nbsp;<code>org.eclipse.persistence.internal.databaseaccess.DatabasePlatform</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>session</code> - current database session</dd>
<dd><code>table</code> - database table meta-data</dd>
<dd><code>suppressLogging</code> - whether to suppress logging during query execution</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>value of <code>true</code> if given table exists or <code>false</code> otherwise</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage">EclipseLink 3.0.2, API Reference</div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/eclipse/persistence/platform/database/MaxDBPlatform.html" title="class in org.eclipse.persistence.platform.database"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/eclipse/persistence/platform/database/Oracle10Platform.html" title="class in org.eclipse.persistence.platform.database"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/eclipse/persistence/platform/database/MySQLPlatform.html" target="_top">Frames</a></li>
<li><a href="MySQLPlatform.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.org.eclipse.persistence.platform.database.DatabasePlatform">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2007&#x2013;2021 <a href="http://www.eclipse.org/eclipselink">Eclipse.org - EclipseLink Project</a>. All rights reserved.</small></p>
</body>
</html>