|  | <!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 --> | 
|  | <title>ForeignKey (EclipseLink 2.7.9, API Reference)</title> | 
|  | <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="ForeignKey (EclipseLink 2.7.9, API Reference)"; | 
|  | } | 
|  | } | 
|  | catch(err) { | 
|  | } | 
|  | //--> | 
|  | </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 2.7.9, API Reference</div> | 
|  | </div> | 
|  | <div class="subNav"> | 
|  | <ul class="navList"> | 
|  | <li><a href="../../javax/persistence/FlushModeType.html" title="enum in javax.persistence"><span class="typeNameLink">Prev Class</span></a></li> | 
|  | <li><a href="../../javax/persistence/GeneratedValue.html" title="annotation in javax.persistence"><span class="typeNameLink">Next Class</span></a></li> | 
|  | </ul> | 
|  | <ul class="navList"> | 
|  | <li><a href="../../index.html?javax/persistence/ForeignKey.html" target="_top">Frames</a></li> | 
|  | <li><a href="ForeignKey.html" target="_top">No Frames</a></li> | 
|  | </ul> | 
|  | <ul class="navList" id="allclasses_navbar_top"> | 
|  | <li><a href="../../allclasses-noframe.html">All 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: </li> | 
|  | <li>Field | </li> | 
|  | <li>Required | </li> | 
|  | <li><a href="#annotation.type.optional.element.summary">Optional</a></li> | 
|  | </ul> | 
|  | <ul class="subNavList"> | 
|  | <li>Detail: </li> | 
|  | <li>Field | </li> | 
|  | <li><a href="#annotation.type.element.detail">Element</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">javax.persistence</div> | 
|  | <h2 title="Annotation Type ForeignKey" class="title">Annotation Type ForeignKey</h2> | 
|  | </div> | 
|  | <div class="contentContainer"> | 
|  | <div class="description"> | 
|  | <ul class="blockList"> | 
|  | <li class="blockList"> | 
|  | <hr> | 
|  | <br> | 
|  | <pre>@Target(value={}) | 
|  | @Retention(value=RUNTIME) | 
|  | public @interface <span class="memberNameLabel">ForeignKey</span></pre> | 
|  | <div class="block">Used to specify the handling of foreign key constraints when schema | 
|  | generation is in effect.  If this annotation is not specified, the | 
|  | persistence provider's default foreign key strategy will be used. | 
|  | <p> | 
|  | The <code>ConstraintMode</code> value is used to specify whether foreign | 
|  | key constraints should be generated. | 
|  | <p> | 
|  | The syntax used in the <code>foreignKeyDefinition</code> element | 
|  | should follow the SQL syntax used by the target database for foreign | 
|  | key constraints.  For example, this may be similar the following: | 
|  | <pre> | 
|  | FOREIGN KEY ( <COLUMN expression> {, <COLUMN expression>}... ) | 
|  | REFERENCES <TABLE identifier> [ | 
|  | (<COLUMN expression> {, <COLUMN expression>}... ) ] | 
|  | [ ON UPDATE <referential action> ] | 
|  | [ ON DELETE <referential action> ] | 
|  | </pre> | 
|  |  | 
|  | When the <code>ConstraintMode</code> value is | 
|  | <code>CONSTRAINT</code>, but the <code>foreignKeyDefinition</code> | 
|  | element is not specified, the provider will generate foreign key | 
|  | constraints whose update and delete actions it determines most | 
|  | appropriate for the join column(s) to which the foreign key | 
|  | annotation is applied.</div> | 
|  | <dl> | 
|  | <dt><span class="seeLabel">See Also:</span></dt> | 
|  | <dd><a href="../../javax/persistence/JoinColumn.html" title="annotation in javax.persistence"><code>JoinColumn</code></a>, | 
|  | <a href="../../javax/persistence/JoinColumns.html" title="annotation in javax.persistence"><code>JoinColumns</code></a>, | 
|  | <a href="../../javax/persistence/MapKeyJoinColumn.html" title="annotation in javax.persistence"><code>MapKeyJoinColumn</code></a>, | 
|  | <a href="../../javax/persistence/MapKeyJoinColumns.html" title="annotation in javax.persistence"><code>MapKeyJoinColumns</code></a>, | 
|  | <a href="../../javax/persistence/PrimaryKeyJoinColumn.html" title="annotation in javax.persistence"><code>PrimaryKeyJoinColumn</code></a>, | 
|  | <a href="../../javax/persistence/JoinTable.html" title="annotation in javax.persistence"><code>JoinTable</code></a>, | 
|  | <a href="../../javax/persistence/CollectionTable.html" title="annotation in javax.persistence"><code>CollectionTable</code></a>, | 
|  | <a href="../../javax/persistence/SecondaryTable.html" title="annotation in javax.persistence"><code>SecondaryTable</code></a>, | 
|  | <a href="../../javax/persistence/AssociationOverride.html" title="annotation in javax.persistence"><code>AssociationOverride</code></a></dd> | 
|  | <dt><span class="simpleTagLabel">Since:</span></dt> | 
|  | <dd>2.1</dd> | 
|  | </dl> | 
|  | </li> | 
|  | </ul> | 
|  | </div> | 
|  | <div class="summary"> | 
|  | <ul class="blockList"> | 
|  | <li class="blockList"> | 
|  | <!-- =========== ANNOTATION TYPE OPTIONAL MEMBER SUMMARY =========== --> | 
|  | <ul class="blockList"> | 
|  | <li class="blockList"><a name="annotation.type.optional.element.summary"> | 
|  | <!--   --> | 
|  | </a> | 
|  | <h3>Optional Element Summary</h3> | 
|  | <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Optional Element Summary table, listing optional elements, and an explanation"> | 
|  | <caption><span>Optional Elements</span><span class="tabEnd"> </span></caption> | 
|  | <tr> | 
|  | <th class="colFirst" scope="col">Modifier and Type</th> | 
|  | <th class="colLast" scope="col">Optional Element and Description</th> | 
|  | </tr> | 
|  | <tr class="altColor"> | 
|  | <td class="colFirst"><code>java.lang.String</code></td> | 
|  | <td class="colLast"><code><span class="memberNameLink"><a href="../../javax/persistence/ForeignKey.html#foreignKeyDefinition--">foreignKeyDefinition</a></span></code> | 
|  | <div class="block">(Optional) The foreign key constraint definition.</div> | 
|  | </td> | 
|  | </tr> | 
|  | <tr class="rowColor"> | 
|  | <td class="colFirst"><code>java.lang.String</code></td> | 
|  | <td class="colLast"><code><span class="memberNameLink"><a href="../../javax/persistence/ForeignKey.html#name--">name</a></span></code> | 
|  | <div class="block">(Optional) The name of the foreign key constraint.</div> | 
|  | </td> | 
|  | </tr> | 
|  | <tr class="altColor"> | 
|  | <td class="colFirst"><code><a href="../../javax/persistence/ConstraintMode.html" title="enum in javax.persistence">ConstraintMode</a></code></td> | 
|  | <td class="colLast"><code><span class="memberNameLink"><a href="../../javax/persistence/ForeignKey.html#value--">value</a></span></code> | 
|  | <div class="block">(Optional) Used to specify whether a foreign key constraint should be | 
|  | generated when schema generation is in effect.</div> | 
|  | </td> | 
|  | </tr> | 
|  | </table> | 
|  | </li> | 
|  | </ul> | 
|  | </li> | 
|  | </ul> | 
|  | </div> | 
|  | <div class="details"> | 
|  | <ul class="blockList"> | 
|  | <li class="blockList"> | 
|  | <!-- ============ ANNOTATION TYPE MEMBER DETAIL =========== --> | 
|  | <ul class="blockList"> | 
|  | <li class="blockList"><a name="annotation.type.element.detail"> | 
|  | <!--   --> | 
|  | </a> | 
|  | <h3>Element Detail</h3> | 
|  | <a name="name--"> | 
|  | <!--   --> | 
|  | </a> | 
|  | <ul class="blockList"> | 
|  | <li class="blockList"> | 
|  | <h4>name</h4> | 
|  | <pre>public abstract java.lang.String name</pre> | 
|  | <div class="block">(Optional) The name of the foreign key constraint.  If this | 
|  | is not specified, it defaults to a provider-generated name.</div> | 
|  | <dl> | 
|  | <dt>Default:</dt> | 
|  | <dd>""</dd> | 
|  | </dl> | 
|  | </li> | 
|  | </ul> | 
|  | </li> | 
|  | </ul> | 
|  | <ul class="blockList"> | 
|  | <li class="blockList"><a name="value--"> | 
|  | <!--   --> | 
|  | </a> | 
|  | <ul class="blockList"> | 
|  | <li class="blockList"> | 
|  | <h4>value</h4> | 
|  | <pre>public abstract <a href="../../javax/persistence/ConstraintMode.html" title="enum in javax.persistence">ConstraintMode</a> value</pre> | 
|  | <div class="block">(Optional) Used to specify whether a foreign key constraint should be | 
|  | generated when schema generation is in effect. | 
|  | <p> | 
|  | A value of <code>CONSTRAINT</code> will cause the persistence | 
|  | provider to generate a foreign key constraint.  If the | 
|  | <code>foreignKeyDefinition</code> element is not specified, the | 
|  | provider will generate a constraint whose update | 
|  | and delete actions it determines most appropriate for the | 
|  | join column(s) to which the foreign key annotation is applied. | 
|  | <p> | 
|  | A value of <code>NO_CONSTRAINT</code> will result in no | 
|  | constraint being generated. | 
|  | <p> | 
|  | A value of <code>PROVIDER_DEFAULT</code> will result in the | 
|  | provider's default behavior (which may or may not result | 
|  | in the generation of a constraint for the given join column(s).</div> | 
|  | <dl> | 
|  | <dt>Default:</dt> | 
|  | <dd>javax.persistence.ConstraintMode.CONSTRAINT</dd> | 
|  | </dl> | 
|  | </li> | 
|  | </ul> | 
|  | </li> | 
|  | </ul> | 
|  | <ul class="blockList"> | 
|  | <li class="blockList"><a name="foreignKeyDefinition--"> | 
|  | <!--   --> | 
|  | </a> | 
|  | <ul class="blockListLast"> | 
|  | <li class="blockList"> | 
|  | <h4>foreignKeyDefinition</h4> | 
|  | <pre>public abstract java.lang.String foreignKeyDefinition</pre> | 
|  | <div class="block">(Optional) The foreign key constraint definition.</div> | 
|  | <dl> | 
|  | <dt>Default:</dt> | 
|  | <dd>""</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 2.7.9, API Reference</div> | 
|  | </div> | 
|  | <div class="subNav"> | 
|  | <ul class="navList"> | 
|  | <li><a href="../../javax/persistence/FlushModeType.html" title="enum in javax.persistence"><span class="typeNameLink">Prev Class</span></a></li> | 
|  | <li><a href="../../javax/persistence/GeneratedValue.html" title="annotation in javax.persistence"><span class="typeNameLink">Next Class</span></a></li> | 
|  | </ul> | 
|  | <ul class="navList"> | 
|  | <li><a href="../../index.html?javax/persistence/ForeignKey.html" target="_top">Frames</a></li> | 
|  | <li><a href="ForeignKey.html" target="_top">No Frames</a></li> | 
|  | </ul> | 
|  | <ul class="navList" id="allclasses_navbar_bottom"> | 
|  | <li><a href="../../allclasses-noframe.html">All 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: </li> | 
|  | <li>Field | </li> | 
|  | <li>Required | </li> | 
|  | <li><a href="#annotation.type.optional.element.summary">Optional</a></li> | 
|  | </ul> | 
|  | <ul class="subNavList"> | 
|  | <li>Detail: </li> | 
|  | <li>Field | </li> | 
|  | <li><a href="#annotation.type.element.detail">Element</a></li> | 
|  | </ul> | 
|  | </div> | 
|  | <a name="skip.navbar.bottom"> | 
|  | <!--   --> | 
|  | </a></div> | 
|  | <!-- ======== END OF BOTTOM NAVBAR ======= --> | 
|  | </body> | 
|  | </html> |