Mysql
 sql >> Base de données >  >> RDS >> Mysql

Mapper un tinyint en tant qu'hibernation booléenne

D'après ce que j'ai lu ici :

Il semble que Hibernate attend un entier et en ait obtenu un peu.

Ce qui signifie que votre annotation est maintenant correcte :

@Type(type = "org.hibernate.type.NumericBooleanType")

Mais peut-être qu'il a mis à jour votre base de données pour définir comme Bit au lieu d'entier, d'où l'erreur.

Si vous avez vraiment besoin d'un TinyInt, vous pouvez utiliser @Type ET @Column , à définir comme Integer, de type TinyInt :

@Column(columnDefinition = "TINYINT")
@Type(type = "org.hibernate.type.NumericBooleanType")
public boolean admin = true;