在 Oracle RDBMS 上使用 EclipseLink 生成 DDL:生成具有字符长度语义的 varchar2 字段
DDL generation with EclipseLink on Oracle RDBMS: Generate varchar2 fields with character length semantics
我使用 eclipselink.ddl-generation.output-mode=database
生成数据库模式。生成的 SQL 可以使用字符长度语义来生成 varchar2 字段吗? Enhance generated DDL of EclipseLink 似乎相关,这个问题的答案可能会解决这个问题。
有两种方法可以更改生成的 SQL。第一个是更改目标数据库平台,并且是特定于 EclipseLink 的。这允许您选择任何数据库平台 class,并且您可以覆盖数据库的平台以使用您想要的任何类型定义,但这将是通用的 - 即所有字符串都将使用 Varchar(255)。
另一种方法是使用 JPA 注释来更改它。 @Column 注释允许指定可以或不可以用于 DDL 的长度,以及定义用于 DDL 的 columnDefinition。就像是
@Column(name="..", columndefinition="Varchar2(255) NOT NULL")
我使用 eclipselink.ddl-generation.output-mode=database
生成数据库模式。生成的 SQL 可以使用字符长度语义来生成 varchar2 字段吗? Enhance generated DDL of EclipseLink 似乎相关,这个问题的答案可能会解决这个问题。
有两种方法可以更改生成的 SQL。第一个是更改目标数据库平台,并且是特定于 EclipseLink 的。这允许您选择任何数据库平台 class,并且您可以覆盖数据库的平台以使用您想要的任何类型定义,但这将是通用的 - 即所有字符串都将使用 Varchar(255)。
另一种方法是使用 JPA 注释来更改它。 @Column 注释允许指定可以或不可以用于 DDL 的长度,以及定义用于 DDL 的 columnDefinition。就像是
@Column(name="..", columndefinition="Varchar2(255) NOT NULL")