您的位置:首页 > 数据库

Idea下Hibernate手动配置好实体类和hbm.xml后自动生成数据库表报错

2017-03-27 21:14 483 查看
大家都知道,hibernate可以根据实体类和hbm.xml映射文件生成对应的数据表,我在跟着教学视频实践时程序一直报错如下:

Caused by: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near'type=InnoDB'

经过查询是因为新版的mysql已经不支持 type=xxx 这种写法,要把type替换成engine  类似 engine=InnoDB这种写法即可。

我修改后手动执行sql语句成功,但是我希望idea能够帮我执行又不知道如何修改。

坑了好久才恍然大悟,是 hibernate.cfg.xml 中的  dialect属性设置问题。该属性设置的是hibernate所使用的数据库方言。如图,设置为 org.hibernate.dialect.MYSQL57Dialect或者org.hibernate.dialect.MYSQL5Dialect 或 org.hibernate.dialect.MYSQL55Dialect 等较新版本的MYSQL方言选项即可
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息