Как я могу приказать, чтобы JPA установил столбец базы данных MySQL с текстовым содержанием как чувствительный к регистру по умолчанию после создания?
Тип MySQL varchar
не чувствителен к регистру. Вам нужно varbinary
.
CREATE TABLE IF NOT EXISTS `stuff` (
`id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
`name` varbinary(255) NOT NULL -- varbinary to be case sensitive
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
В аннотации @Column
в вашем поле можно указать атрибут columnDefinition, который может позволить вам , чтобы указать для столбца сортировку с учетом регистра.
public abstract String columnDefinition
(Необязательно) Фрагмент SQL, который используется при генерации DDL для столбца.
По умолчанию используется сгенерированный SQL для создания столбца предполагаемого типа.
По умолчанию:
""
В вашем случае, например, используя аннотацию @Column, вы должны использовать
@Column (name = "NAME_COL", columnDefinition = "VARCHAR (250 ) COLLATE latin1_general_cs ") частное имя строки;