| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" |
| "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
| <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> |
| <head> |
| <meta http-equiv="Content-Type" content="text/html; charset=us-ascii" /> |
| <meta http-equiv="Content-Style-Type" content="text/css" /> |
| <meta http-equiv="Content-Script-Type" content="text/javascript" /> |
| <title>ddl-generation | EclipseLink 2.4.x Java Persistence API (JPA) Extensions Reference</title> |
| <meta name="generator" content="Oracle DARB XHTML Converter (Mode = document) - Version 1.0.11" /> |
| <meta name="date" content="2013-07-12T8:36:41Z" /> |
| <meta name="robots" content="noarchive" /> |
| <meta name="doctitle" content="ddl-generation" /> |
| <meta name="relnum" content="Release 2.4" /> |
| <link rel="stylesheet" type="text/css" href="../../../dcommon/style.css" media="screen" /> |
| <link rel="copyright" href="http://www.eclipse.org/org/documents/epl-v10.php" title="Copyright" type="text/html" /> |
| <link rel="start" href="../../index.htm" title="Home" type="text/html" /> |
| <link rel="contents" href="toc.htm" title="Contents" type="text/html" /> |
| <link rel="prev" href="p_ddl_table_creation_suffix.htm" title="Previous" type="text/html" /> |
| <link rel="next" href="p_ddl_generation_output_mode.htm" title="Next" type="text/html" /> |
| <!-- START: Disqus --><script type="text/javascript"> var disqus_developer = 0; </script><!-- END: Disqus --><!-- START: Sharethis --><script type="text/javascript">var switchTo5x=true;</script><script type="text/javascript" src="http://w.sharethis.com/button/buttons.js"></script><script type="text/javascript" src="http://s.sharethis.com/loader.js"></script> <!-- END: Sharethis --></head> |
| <body bgcolor="#FFFFFF"><iframe id="docheader" frameborder="0" framemargin="0" scrolling="no" src="../../../dcommon/header.html"></iframe><script src="http://www.google.com/jsapi" type="text/javascript"></script><script type="text/javascript"> google.load('search', '1', {language : 'en'}); google.setOnLoadCallback(function() { var customSearchOptions = {}; var googleAnalyticsOptions = {}; googleAnalyticsOptions['queryParameter'] = 'q'; googleAnalyticsOptions['categoryParameter'] = ''; customSearchOptions['googleAnalyticsOptions'] = googleAnalyticsOptions; var customSearchControl = new google.search.CustomSearchControl( '016171230611334810008:4sqnhke2any', customSearchOptions); customSearchControl.setResultSetSize(google.search.Search.FILTERED_CSE_RESULTSET); var options = new google.search.DrawOptions(); options.setSearchFormRoot('cse-search-form'); customSearchControl.draw('cse', options); }, true);</script><link rel="stylesheet" href="http://www.google.com/cse/style/look/default.css" type="text/css" /><div id="cse" style="width:100%;"></div> |
| <div class="header"><a id="top" name="top"></a> |
| <table class="simple oac_no_warn" summary="" cellspacing="0" cellpadding="0" width="100%"> |
| <tr> |
| <td align="left" valign="top"><div class="booktitle">Java Persistence API (JPA) Extensions Reference for EclipseLink, |
| Release 2.4</div></td> |
| <td valign="bottom" align="right" width="144"> |
| <table class="simple oac_no_warn" summary="" cellspacing="0" cellpadding="0" width="100%"> |
| <tr> |
| <td> </td> |
| <td align="center" valign="top"><a href="toc.htm"><img src="../../../dcommon/images/contents.png" alt="Go To Table Of Contents" border="0" height="16" width="16" /><br /> |
| <span class="mini">Contents</span></a></td><td> </td><td align="center"><a href="../../../" target="_top" class="external text" title="Other searches" rel="nofollow"><img src="../../../dcommon/images/search.png" alt="Search" style="border:0;" /><br /><span class="mini">Other Searches</span></a></td><td> </td><td align="center"><a href="../../eclipselink_jpa_extensions.pdf" title="PDF" target="_blank"><img src="../../../dcommon/images/pdf_icon.png" style="padding-right:5px;border:0" alt="PDF"><br /><span class="mini">PDF</span></a></td><td align="center"><a href="#disqus_thread" title="Comments""><img src="../../../dcommon/images/comments.png" style="padding-right:5px;border:0" alt="Comments"><br /><span class="mini">Comments</span></a> |
| </tr> |
| </table> |
| </td> |
| </tr> |
| </table> |
| <hr /> |
| <table class="navigation simple oac_no_warn" summary="" cellspacing="0" cellpadding="0" width="100" align="center"> |
| <tr> |
| <td align="center"><a href="p_ddl_table_creation_suffix.htm"><img src="../../../dcommon/images/larrow.png" alt="Previous" border="0" height="16" width="16" /></a></td> |
| <td align="center"><a href="p_ddl_generation_output_mode.htm"><img src="../../../dcommon/images/rarrow.png" alt="Next" border="0" height="16" width="16" /></a></td> |
| <td> </td> |
| </tr> |
| </table> |
| </div> |
| <!-- class="header" --> |
| <div class="ind"><!-- End Header --><a id="BABHEJJI" name="BABHEJJI"></a><a id="TLJPA892" name="TLJPA892"></a> |
| <hr /> |
| <div class="refsect1"><!-- infolevel="all" infotype="General" --> |
| <h2 class="refsect1"><font face="arial, helvetica, sans-serif" color="#330099">ddl-generation</font></h2> |
| <p>Use <code>eclipselink.ddl-generation</code> to specify how EclipseLink generates DDL (Data Definition Language) for the database schema (tables and constraints) on deployment</p> |
| <a id="sthref881" name="sthref881"></a> |
| <p><strong><br /><span class="refsubsect">Values</span></strong></p> |
| <p><a href="#BABBEGCE">Table 5-29</a> describes this persistence property's values.</p> |
| <div class="tblhruleformalwide"><a id="TLJPA893" name="TLJPA893"></a><a id="sthref882" name="sthref882"></a><a id="BABBEGCE" name="BABBEGCE"></a> |
| <p><strong><em><font face="arial, helvetica, sans-serif">Table 5-29 Valid Values for ddl-generation</font></em></strong></p> |
| <table class="HRuleFormalWide" title="Valid Values for ddl-generation" summary="Valid Values for this query hint" dir="ltr" border="1" width="100%" frame="hsides" rules="rows" cellpadding="3" cellspacing="0"> |
| <col width="29%" /> |
| <col width="*" /> |
| <thead> |
| <tr align="left" valign="top"> |
| <th align="left" valign="bottom" id="r1c1-t32"><font face="Arial, Helvetica, sans-serif"><strong>Value</strong></font></th> |
| <th align="left" valign="bottom" id="r1c2-t32"><font face="Arial, Helvetica, sans-serif"><strong>Description</strong></font></th> |
| </tr> |
| </thead> |
| <tbody> |
| <tr align="left" valign="top"> |
| <td align="left" id="r2c1-t32" headers="r1c1-t32"> |
| <p><code>create-tables</code></p> |
| </td> |
| <td align="left" headers="r2c1-t32 r1c2-t32"> |
| <p>EclipseLink will attempt to execute a <code>CREATE TABLE</code> SQL for each table.</p> |
| <p>If the table already exists, EclipseLink will follow the default behavior of your specific database and JDBC driver combination (when a <code>CREATE TABLE</code> SQL is issued for an already existing table). In most cases an exception is thrown and the table is not created; the existing table will be used. <code>EclipseLink</code> will then continue with the next statement.</p> |
| </td> |
| </tr> |
| <tr align="left" valign="top"> |
| <td align="left" id="r3c1-t32" headers="r1c1-t32"> |
| <p><code>create-or-extend-tables</code></p> |
| </td> |
| <td align="left" headers="r3c1-t32 r1c2-t32"> |
| <p>EclipseLink will attempt to create tables. If the table exists, EclipseLink will add any missing columns.</p> |
| </td> |
| </tr> |
| <tr align="left" valign="top"> |
| <td align="left" id="r4c1-t32" headers="r1c1-t32"> |
| <p><code>drop-and-create-tables</code></p> |
| </td> |
| <td align="left" headers="r4c1-t32 r1c2-t32"> |
| <p>EclipseLink will attempt to <code>DROP</code> all tables, then <code>CREATE</code> all tables. If any issues are encountered, EclipseLink will follow the default behavior of your specific database and JDBC driver combination, then continue with the next statement</p> |
| <p>This is useful in development if the schema frequently changes or during testing when the existing data needs to be cleared.</p> |
| <p><strong>Note</strong>: Using <code>drop-and-create</code> will remove all of the data in the tables when they are dropped. You should never use option on a production schema that has valuable data in the database. If the schema changed dramatically, there could be old constraints in the database that prevent the dropping of the old tables. This may require the old schema to be dropped through another mechanism</p> |
| </td> |
| </tr> |
| <tr align="left" valign="top"> |
| <td align="left" id="r5c1-t32" headers="r1c1-t32"> |
| <p><code>none</code></p> |
| </td> |
| <td align="left" headers="r5c1-t32 r1c2-t32"> |
| <p>(Default) No DDL generated; no schema generated.</p> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| <br /></div> |
| <!-- class="tblhruleformalwide" --> |
| <a id="sthref883" name="sthref883"></a> |
| <p><strong><br /><span class="refsubsect">Usage</span></strong></p> |
| <p>You can use <code>create-or-extend-tables</code> only when <code>eclipselink.<a href="p_ddl_generation_output_mode.htm#BABCDHBB">ddl-generation.output-mode</a></code> = <code>database</code>.</p> |
| <p>If you are using persistence in a Java SE environment and would like to create the DDL files without creating tables, additionally define a Java system property <code>INTERACT_WITH_DB</code> and set its value to <code>false</code>.</p> |
| <a id="sthref884" name="sthref884"></a> |
| <p><strong><br /><span class="refsubsect">Examples</span></strong></p> |
| <p><a href="#BABFFGJE">Example 5-17</a> shows how to use this property in the <code>persistence.xml</code> file.</p> |
| <div class="example"><a id="BABFFGJE" name="BABFFGJE"></a><a id="TLJPA894" name="TLJPA894"></a> |
| <p><strong><em><font face="arial, helvetica, sans-serif">Example 5-17 Using ddl-generation in persistence.xml</font></em></strong></p> |
| <pre xml:space="preserve" class="oac_no_warn"> |
| <property name="<strong>eclipselink.ddl-generation</strong>" value="drop-and-create-tables"/> |
| <property name="eclipselink.create-ddl-jdbc-file-name" value="createDDL_ddlGeneration.jdbc"/> |
| <property name="eclipselink.drop-ddl-jdbc-file-name" value="dropDDL_ddlGeneration.jdbc"/> |
| <property name="eclipselink.ddl-generation.output-mode" value="both"/> |
| </pre></div> |
| <!-- class="example" --> |
| <p><a href="#BABJADFJ">Example 5-18</a> shows how to use this property in a property map.</p> |
| <div class="example"><a id="BABJADFJ" name="BABJADFJ"></a><a id="TLJPA895" name="TLJPA895"></a> |
| <p><strong><em><font face="arial, helvetica, sans-serif">Example 5-18 Using ddl-generation in a Property Map</font></em></strong></p> |
| <pre xml:space="preserve" class="oac_no_warn"> |
| import org.eclipse.persistence.config.PersistenceUnitProperties; |
| propertiesMap.put(PersistenceUnitProperties.DDL_GENERATION, PersistenceUnitProperties.DROP_AND_CREATE); |
| propertiesMap.put(PersistenceUnitProperties.DDL_GENERATION_MODE, PersistenceUnitProperties.BOTH); |
| propertiesMap.put(PersistenceUnitProperties.CREATE_JDBC_DDL_FILE, "create.sql"); |
| </pre></div> |
| <!-- class="example" --> |
| <a id="sthref885" name="sthref885"></a> |
| <p><strong><br /><span class="refsubsect">See Also</span></strong></p> |
| <p>For more information, see:</p> |
| <ul> |
| <li> |
| <p><a href="p_create_ddl_jdbc_file_name.htm#createddljdbcfilename">"create-ddl-jdbc-file-name"</a></p> |
| </li> |
| <li> |
| <p><a href="p_drop_ddl_jdbc_file_name.htm#BABFEBCG">"drop-ddl-jdbc-file-name"</a></p> |
| </li> |
| <li> |
| <p><a href="p_ddl_generation_output_mode.htm#BABCDHBB">"ddl-generation.output-mode"</a></p> |
| </li> |
| <li> |
| <p>Example<br /> |
| <code><a href="http://wiki.eclipse.org/EclipseLink/Examples/JPA/DDL">http://wiki.eclipse.org/EclipseLink/Examples/JPA/DDL</a></code></p> |
| </li> |
| </ul> |
| </div> |
| <!-- class="refsect1" --></div> |
| <!-- class="ind" --> |
| <!-- Start Footer --> |
| <div class="footer"> |
| <hr /> |
| <table class="simple oac_no_warn" summary="" cellspacing="0" cellpadding="0" width="100%"> |
| <col width="33%" /> |
| <col width="*" /> |
| <col width="33%" /> |
| <tr> |
| <td valign="bottom"> |
| <table class="navigation simple oac_no_warn" summary="" cellspacing="0" cellpadding="0" width="100" align="center"> |
| <col width="*" /> |
| <col width="48%" /> |
| <col width="48%" /> |
| <tr> |
| <td> </td> |
| <td align="center"><a href="p_ddl_table_creation_suffix.htm"><img src="../../../dcommon/images/larrow.png" alt="Previous" border="0" height="16" width="16" /></a></td> |
| <td align="center"><a href="p_ddl_generation_output_mode.htm"><img src="../../../dcommon/images/rarrow.png" alt="Next" border="0" height="16" width="16" /></a></td> |
| </tr> |
| </table> |
| </td> |
| <td align="center" width="34%"><a href="http://www.eclipse.org/eclipselink/" title="EclipseLink home"><img src="../../../dcommon/images/ellogo.png" alt="EclipseLink" width="150" border="0" /></a><br /> |
| </td> |
| |
| <td valign="bottom" align="right"> |
| <table class="simple oac_no_warn" summary="" cellspacing="0" cellpadding="0" width="225"> |
| <tr> |
| <td> </td> |
| <td align="center" valign="top"><a href="toc.htm"><img src="../../../dcommon/images/contents.png" alt="Go To Table Of Contents" border="0" height="16" width="16" /><br /> |
| <span class="mini">Contents</span></a></td><td> </td><td align="center"><a href="../../../" target="_top" class="external text" title="Other searches" rel="nofollow"><img src="../../../dcommon/images/search.png" alt="Search" style="border:0;" /><br /><span class="mini">Other Searches</span></a></td><td> </td><td align="center"><a href="../../eclipselink_jpa_extensions.pdf" title="PDF" target="_blank"><img src="../../../dcommon/images/pdf_icon.png" style="padding-right:5px;border:0" alt="PDF"><br /><span class="mini">PDF</span></a></td><td align="center"><a href="#disqus_thread" title="Comments""><img src="../../../dcommon/images/comments.png" style="padding-right:5px;border:0" alt="Comments"><br /><span class="mini">Comments</span></a> |
| </tr> |
| </table> |
| </td> |
| </tr> |
| </table> |
| </div> |
| <!-- class="footer" --> |
| <div id="copyright">Copyright © 2012, 2013 by The Eclipse Foundation under the <a href="http://www.eclipse.org/org/documents/epl-v10.php">Eclipse Public License (EPL)</a><br /> <script type="text/javascript">var LastUpdated = document.lastModified;document.writeln ("Updated: " + LastUpdated);</script> </div><!-- START: Analytics --><script type="text/javascript"> var _gaq = _gaq || []; _gaq.push(['_setAccount', 'UA-1608008-2']); _gaq.push(['_trackPageview']); (function() { var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); })(); </script><!-- END: Analytics --><!-- START: Sharethis --><script>var options={ "publisher": "e2fe9e07-fab6-4f84-83ea-0991b429842c", "position": "right", "ad": { "visible": false, "openDelay": 5, "closeDelay": 0}};var st_hover_widget = new sharethis.widgets.hoverbuttons(options);</script><!-- END: Sharethis --><!-- START: Disqus --><div id="disqus_thread"></div> <script type="text/javascript"> var disqus_developer = 1;var disqus_shortname = 'eclipselinkdoc'; (function() { var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true; dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js'; (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq); })(); </script> <noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript> <a href="http://disqus.com" class="dsq-brlink">Comments powered by <span class="logo-disqus">Disqus</span></a><!-- END: Disqus --></body> |
| </html> |