3

我正在使用ebean,它非常易于使用,但我不知道创建我的自定义索引。

@Entity
@Table(name="users")
public class User {
    public String name;

    // how to create index for this column?
    public long displayOrder;
}

我试图为该列创建索引displayOrder,但该怎么做呢?

这个没有注解,每次都会重新创建生成的ddl文件,所以我不能在那里添加自己的ddl语句。并且不方便直接在数据库中添加索引。

有什么简单的解决方案吗?

4

1 回答 1

6

没有直接的答案,但我认为,你应该关注一段时间。

AFAIK 无法通过注释声明“KEY”索引,您只能添加@Column(unique=true)到它(如果您需要一个唯一字段)。

当然,对于主键,您只需要使用@Id注释即可。

另一方面,我不建议每次都使用自动 DDL 创建 - 请记住,这将在下一次进化应用后破坏您所有的数据库结构和数据!!!而是采用这种方式:

  • 第一步准备尽可能多的模型,并使用自动 DDL 将其应用到 DB
  • 禁用 Ebean 的自动生成
  • 开始使用自己的演变(2.sql、3.sql 等)来添加缺失的元素 - 例如缺失索引。
  • 永远不要回头 :) 从现在开始,您需要更改现有表,而不是每次从头开始创建它们。
于 2012-12-03T12:35:51.077 回答