JPA - 如何在DDL中将字符串列设置为varchar(max) [英] JPA - How to set string column to varchar(max) in DDL
问题描述
使用 JPA ,属性的DDL代:
@Column
final String someString;
将会是 someString varchar(255)null
@Column(length = 1337)
final String someString;
会产生 someString varchar(1337)null
。
但是我怎样才能得到 someString varchar(max)null
?
有可能使用长度
-attribute,或者是否需要使用 columnDefinition
-attribute?
$ b $有些月份已经过去了,新的知识被收购了,所以我会回答我自己的问题: b
@Lob
@Column
final String someString;
会产生最正确的结果。使用我使用的 With JPA, DDL-generation for the attribute: will be will yield But how can I get it to produce Is it possible using the Some months have passed, new knowledge acquired, so I'll answer my own question: yields the most correct result. With the version of 这篇关于JPA - 如何在DDL中将字符串列设置为varchar(max)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋! hbm2ddl
版本,它将转换为文本
类型,其中 SqlServerDialect
。由于 varchar(max)
取代 text
更新版本的 SQL Server ,希望有更新的版本 hbm2ddl
会产生 varchar(max)
而不是 text 对于这种类型的映射(我暂时停留在一个相当过时的Hibernate版本中)。
@Column
final String someString;
someString varchar(255) null
@Column(length = 1337)
final String someString;
someString varchar(1337) null
.someString varchar(max) null
?length
-attribute, or do I need to use the columnDefinition
-attribute? @Lob
@Column
final String someString;
hbm2ddl
I'm using, this will be transformed to the type text
with SqlServerDialect
. Since varchar(max)
is the replacement for text
in newer versions of SQL Server, hopefully, newer versions of hbm2ddl
will yield varchar(max)
instead of text
for this type of mapping (I'm stuck at a quite dated version of Hibernate at the moment..)