gpt4 book ai didi

java - 使用hibernate JPA,mysql数据库,创建索引错误

转载 作者:行者123 更新时间:2023-11-29 00:13:17 31 4
gpt4 key购买 nike

我正在使用 hibernate JPA

hibernate 版本是 3.5.1-Final并且 hibernate-annotations 版本也是 3.5.1-Final

mysql 版本是:5.5.35-0ubuntu0.12.04.2

我有一个专栏:

@Column(name = "TITLE", length = 300)
@Index(name = "I_PRODUCT_ITEM_TITLE")
public String getTitle() {
return title;
}

但是创建索引,告诉我

ERROR o.h.tool.hbm2ddl.SchemaUpdate - Unsuccessful: create index I_PRODUCT_ITEM_TITLE on T_PRODUCT_ITEM (TITLE)
ERROR o.h.tool.hbm2ddl.SchemaUpdate - BLOB/TEXT column 'TITLE' used in key specification without a key length

我也不知道为什么....

最佳答案

因为您指定的长度为 300,所以列类型被 Hibernate 设置为 TEXT。

在 TEXT 列上添加索引需要您 to specify a length prefix并且 Hibernate 似乎无法正确添加它。

如果您不需要长度 300 并且您可以接受 255,那么您可以选择它。

否则,您可以选择使用增量更新脚本自己创建架构,这是生产系统的首选方式。

您应该创建一个 Hibernate JIRA 问题来描述此问题。一些complained about it since 2005 .

关于java - 使用hibernate JPA,mysql数据库,创建索引错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23904429/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com