Duplicate entry '0' for key 'PRIMARY'错误

作者:烟中隐约闪现 | 创建时间: 2023-04-29
hibernate学习中映射入门的新手可能遇到如“Duplicate entry '0' for key 'PRIMARY'”的错误提示,原因是主键重复,0主键已经存在,不能再进行添加了。...
Duplicate entry '0' for key 'PRIMARY'错误

错误详细介绍:

本人微信公众号,欢迎关注

14:51:24,878  WARN JDBCExceptionReporter : 100 - SQL Error: 1062, SQLState: 23000 14:51:24,879 ERROR JDBCExceptionReporter : 101 - Duplicate entry '0' for key 'PRIMARY' 14:51:24,880 ERROR AbstractFlushingEventListener : 324 - Could not synchronize database state with session org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:94) at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)

解决方案:

将主键设置为自动增长。可以在数据库手动将相关表设置ID为自增长

手动将表设置为自增长有弊端,建议在annotation里边的POJO类使用注解方式设置自增长。mysql的数据库如图所示设置。

保存执行即可解决问题

查看数据库,果然自增了

点击展开全文

更多推荐