在Oracle RDBMS上使用EclipseLink生成DDL:生成具有字符长度语义的varchar2字段

时间:2016-01-13 08:40:46

标签: oracle jpa eclipselink ddl

我使用eclipselink.ddl-generation.output-mode=database生成数据库架构。生成的SQL是否可以使用字符长度语义来生成varchar2字段? Enhance generated DDL of EclipseLink似乎有关,这个问题的答案可能会解决这个问题。

1 个答案:

答案 0 :(得分:1)

有两种方法可以更改生成的SQL。第一个是更改目标数据库平台,并且是特定于EclipseLink的。这允许您选择任何数据库平台类,并且您可以覆盖您的数据库平台以使用您想要的任何类型定义,但这将是通用的 - 即所有字符串将使用Varchar(255)。

另一种方法是使用JPA注释更改它。 @Column注释允许指定可能用于或不用于DDL的长度,以及定义用于DDL的columnDefinition。就像是  @Column(name="..", columndefinition="Varchar2(255) NOT NULL")