Hibernate之org.hibernate.exception.SQLGrammarException: could not execute statement

时间:2024-03-23 13:26:44

初学hibernate的时候,一开始就遇到了这个难题,找了很久终于找到一个帖子,才解决了。

Hibernate之org.hibernate.exception.SQLGrammarException: could not execute statement

这是主要是因为数据库驱动在5.0之前和之后去所改变,根据自己的数据库驱动做修改

org.hibernate.dialect.MySQL5Dialect:新版本的mysql方言 
org.hibernate.dialect.MySQLDialect :老版本的mysql方言 

如果你配置的是老版本的方言,可以修改成新版本的方言。 

注:  hibernate运行通过,但没有数据库没有创建表,可能原因

1.主键使用字符串过长
2.bean属性中有关键字

3.hibernate.cfg.xml文件中缺少了一个自动创建数据库表的语句:

        <property name="hibernate.hbm2ddl.auto">update</property>

4.检查setter//getter方法,看是否有例如boolean属性的getter方法为isXXX

5.修改数据库方言将数据库方言,即新老版本问题。