Appending Strings to CREATE TABLE Statements

You can append a string to the end of a CREATE TABLE statement when generating a DDL. This can be useful, for example, to create tables that are transactional, by appending engine=InnoDB to the end of the creation statement to specify that the MySQL InnoDB storage engine will be used.

Appending the string only affects the DDL generation. It does not affect any other runtime behavior.

You can specify strings using persistence unit properties or session properties to apply to every table in that context. Specify strings in eclipselink-orm.xml to apply to individual tables.

Persistence Unit Properties

For a persistence unit, use the property eclipselink.ddl-generation.table-creation-suffix to append a string to all tables defined in the persistence unit.

eclipselink-orm.xml

For individual tables, use the creation-suffix attribute for table creation elements in eclipelink-orm.xml. This following elements can take this attribute:

table

secondary-table

join-table

collection-table

table-generator

Annotations

This feature is not currently supported through annotations.

Example

Assuming it has an ID annotated, an eclipselink-orm.xml file containing...