Hibernate @Index ошибка в длинных строковых столбцах - PullRequest
1 голос
/ 08 марта 2011

У меня есть модель данных, в которой мне нужно индексировать столбец String с помощью базы данных:

@Entity
public class A {
    // ... 

    @Column(length=2048)
    @Index(name="strFieldIndex")
    private String strField;
}

При добавлении атрибута length @Column(length=2048) (для которого спящий режим не 't генерировать varchar больше) следующее сообщение об ошибке появляется на MySQL:

ERROR org.hibernate.tool.hbm2ddl.SchemaExport - 
    BLOB/TEXT column 'strField' used in key specification without a key length

Я отсканировал документы API на спящий режим и не могу найти подход к настройкедлина ключа.

1 Ответ

2 голосов
/ 08 марта 2011

Я думаю, что вы должны объявить этот индекс вручную, как требуется для MySQL, поскольку Hibernate не может удовлетворить все специфические для СУБД требования.Например, используя синтаксис <database-object> .

...