2012-02-25 4 views
0

J'ai créé une table dans la base de données en utilisant hibernate et l'un de l'attribut (nom d'utilisateur) est une clé primaire. Donc quand j'essaie d'insérer des valeurs dupliquées dans le nom d'utilisateur, je reçois l'exception suivante. avoir à gérer cette exception afin de demander à l'utilisateur que "nom d'utilisateur existe déjà".Hibernate Exception clé primaire

22462 [http-8080-2] WARN org.hibernate.util.JDBCExceptionReporter - Erreur SQL: 0, SQLState: null 22462 [http-8080-2] ERREUR org.hibernate.util.JDBCExceptionReporter - n'a lot 22462 [http-8080-2] ERREUR org.hibernate.event.def.AbstractFlushingEventListener - Impossible de synchroniser l'état de la base de données avec la session

+0

Copie possible de -http: //stackoverflow.com/questions/3820452/hibernate-could-not-synchronize-database-state-with-session – Rocky

Répondre

1

IMO, une meilleure approche serait de faire d'abord une requête get, c'est à dire trouver l'objet par PK et si renvoie un objet non nul, vous pouvez afficher le message d'erreur "entrée dupliquée" à l'utilisateur sinon insérer l'enregistrement dans la base de données.

Questions connexes