• mysql版本导致的hibernate 方言问题


    今天在看hibernate视频时,看到视频上人家的hibernate.cfg.xml配置文件在配置hibernate方言时,发现视频上是这样写的<property name="dialect">org.hibernate.dialect.MySQLInnoDBDialect</property>,结果我也是那样写,在JUnit下测试发现没通过,报的错误如下图所示:

    这个错误说的是表不存在,可是视频上说事自动创建表啊!带着疑问就去百度了,

    找到两种解决办法。第一种是:解决mysql的版本问题(我用的是mysql 5.5版本),mysql 5.0版本以后的数据库方言是:org.hibernate.dialect.MySQ5LInnoDBDialect。

    第二种是,如果你数据库方言用的是MySQLInnoDBDialect,这个要表存在才能用。可是你没建表,所以你应该改用MySQLDialect。

    以下是MySQLDialect和MySQLInnoDBDialect的区别:MySQLDialect:表名不存在下使用。MySQLInnoDBDialect:表名存在的情况下使用

  • 相关阅读:
    CSS样式实现两个图片平分三角
    Vue iview 表单封装验证
    Vue编程式路由跳转传递参数
    组件 Autofac 实现接口类工具
    GridView
    2016_09_8
    使用js创建对象
    从DataTable获取Json数据
    jQuery高级编程
    _16_08_15
  • 原文地址:https://www.cnblogs.com/a8457013/p/8460126.html
Copyright © 2020-2023  润新知