在springboot中第一次配置hibernate,yml文件看其他大佬的文章照葫芦画瓢,结果报错,下面上图:


如图可以看到,是将email字段设置为unique时报错,但是在网上查询之后发现,实际上是因为数据库方言dialect设置的问题!
当我将yml中的dialect设置由org.hibernate.dialect.MySQL5Dialect改为org.hibernate.dialect.MySQL8Dialect后就不再报错了。

而之所以会出现这种问题,就是因为MySQL5Dialect用的引擎不是InnoDB。
而通过实验发现,将5改成55、57、8都能成功。
这几者之间的关系可以参照这篇文章:
https://blog.csdn.net/qq_38538733/article/details/84801423
本文探讨了在SpringBoot中初次配置Hibernate时,遇到email字段唯一性错误,经发现是由于方言设置不匹配MySQL InnoDB引擎。解决方法是将dialect从MySQL5Dialect改为MySQL8Dialect,或尝试不同版本号。

1441

被折叠的 条评论
为什么被折叠?



