- Я создал столбец:
Код: Выделить всё
ALTER TABLE Country ADD code CHAR(2) NOT NULL DEFAULT 'US' - Я добавил сопоставление:
Код: Выделить всё
@Column(nullable = false, columnDefinition = "CHAR(2)") private String code; - И теперь я получаю эту странную ошибку:
Код: Выделить всё
Schema-validation: wrong column type encountered in column [code] in table [Country]; found [bpchar (Types#CHAR)], but expecting [char(2) (Types#VARCHAR)]
По какой-то странной причине Hibernate считывает определение столбца CHAR(2) как ожидание VARCHAR. Это кажется явно неправильным, но, возможно, я что-то упускаю.
Есть ли способ вызвать правильное поведение Hibernate (чтобы он правильно проверял схему, как в случае с MySQL)? Есть ли обходной путь, который позволил бы отключить проверку для определенного столбца/класса?
Эта проблема аналогична проблеме Quarkus с найденным спящим режимом [bpchar (Types#CHAR)], но с ожиданием [char (Types#VARCHAR)], но на этот раз проблема связана с PostgreSQL, и из-за правильного поведения MySQL я подозреваю, что что-то было исправлено на стороне Hibernate, поскольку этот вопрос был задан.
Подробнее здесь: https://stackoverflow.com/questions/798 ... ting-char2
Мобильная версия