Mysql
 sql >> Database >  >> RDS >> Mysql

MySQL/Hibernate:il valore predefinito per la colonna non nulla non funziona

Secondo la documentazione di PropertyValueException, se imposti un valore nullo in una proprietà dichiarata not-null="true" e poi provi a mantenerla/aggiornarla, otterrai questa eccezione.

Vedere http://docs.jboss.org/ hibernate/orm/3.5/javadoc/org/hibernate/PropertyValueException.html

Dovresti rimuovere l'attributo not-null="true" dalla configurazione (perché il valore predefinito di not-null è false) e quindi il database dovrebbe inserire il valore predefinito che hai specificato nella configurazione per te (in questo caso '1 ').

[AGGIORNAMENTO]

Avrei preferito inserirlo come commento nella risposta di fujy, ma non mi è ancora consentito commentare altre risposte. Funziona come previsto se si rimuove l'attributo 'non null' (come mostro di seguito)? Credo che sia ciò che sta causando l'eccezione che stai ricevendo.

 <property name="isActive" type="java.lang.Short">
     <meta attribute="default-value">1</meta>
     <column name="IsActive" />
 </property>