无论如何我可以生成TEXT列吗?我的@Entity类包含一个String,它是产品的摘要,但是String生成的VARCHAR(255)不够大。有什么我可以用来生成表但是在Java中将它从VARCHAR更改为TEXT列吗?这是一个Play应用程序。
实体类 - 关系。
package models.products;
import java.util.*;
import javax.persistence.*;
import play.data.format.*;
import play.data.validation.*;
import com.avaje.ebean.*;
import models.shopping.*;
// Product entity managed by Ebean
@Entity
public class Product extends Model {
@Constraints.Required
private String name;
@Constraints.Required
private String description;
@Constraints.Required
private int stock;
@Constraints.Required
private double price;
}
Java生成的SQL。
create table product (
id bigint not null,
name varchar(255),
description varchar(255),
stock integer,
price double,
trailer varchar(255),
review varchar(255),
constraint pk_product primary key (id)
);
create sequence product_seq;
我希望能够成功:
create table product (
...
description text,
...
);
答案 0 :(得分:3)
@Column
注释允许按columnDefinition
参数定义类型,您需要添加它像
@Column(length = 65535,columnDefinition="Text")