Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用有限字符长度从jpa生成表_Java_Jpa_Varchar_Longtext - Fatal编程技术网

Java 使用有限字符长度从jpa生成表

Java 使用有限字符长度从jpa生成表,java,jpa,varchar,longtext,Java,Jpa,Varchar,Longtext,我想用varchar(700)在数据库中创建一个文本字段(最多700个字符)。 我试着这样定义它: @Entity @Table(name = "t_foo) public class Foo { @Column(unique = true, nullable = false) @Id private String idNational; @Column(length=700) private String comment; 表generate具有以下属性: idNational var

我想用varchar(700)在数据库中创建一个文本字段(最多700个字符)。 我试着这样定义它:

@Entity
@Table(name = "t_foo)
public class Foo {

@Column(unique = true, nullable = false)
@Id
private String idNational;

@Column(length=700)
private String comment;

表generate具有以下属性:

idNational varchar(255) NOT NULL

comment longtext NULL
我真的希望评论是varchar(700)。有没有理由让它成为一篇长篇大论?有没有办法让它变成瓦查尔?也许这是一个简单的问题,但我还没有找到解决办法!我必须用DDL来创建表吗


谢谢大家!

这是JPA提供程序配置的问题。
更好的解决方案是使用DDL创建表。

您没有说您正在使用哪个数据库/版本,但它听起来像是MySQL版本,varchar的最大长度为255。最新版本支持更大的varchar

因为您指定的值大于255,所以它使用的是longtext


MySQL 5.0.3及更高版本支持长度为65535的varchars-早期版本只有255个。

你说得对,下次我会记得把我的版本放进去!我使用的是5.1.43-所以我用DDL创建了这些表,它们现在有700个字符。。。