Hibernate不能自动建数据表解决办法
首先自己要注意自己的MYSQL版本,然后设置对应的方言
- 兼容性模式
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
- 需要注意的是5.5一下版本可以使用
<property name="hibernate.dialect">org.hibernate.dialect.MySQLInnoDBDialect</property>
- Mysql数据库版本是5.5的,设置事务性方言时要修改,就是加一个5
<property name="dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>
此外还要注意其他方面的问题
1.错误原因:hbm文件中定义的元素含有sql的关键字
例如: <property name="name"></property> <property name="birthday"></property> <property name="from"></property> 代码中含有"from"关键字.
2.错误原因:配置文件中使用了create-drop属性,数据库表其实已经创建,只是又被删除了:
<property name="hbm2ddl.auto">create-drop</property> 只要把create-drop替换为create即可
3.错误原因:默认的数据库类型错误。
把mysql中my.ini文件中配置的 MyISAM 变成 INNODB,代码如下:
# The default storage engine that will be used when create new tables when
default-storage-engine=INNODB
4.错误原因;hbm文件中未写错,但是在myeclipse中开发的
myeclipse不能自动识别如下语句,需要在Configuration中手动重新配置一下即可运行;
<property name="hbm2ddl.auto">update</property>
5.如果在spring里面集成hibernate3,
例如配置代码如下:
<property name="hibernateProperties"> <value>
hibernate.dialect=org.hibernate.dialect.MySQLDialect//注意这些地方没有空格
hibernate.hbm2ddl.auto=update//注意这些地方没有空格
hibernate.show_sql=false//注意这些地方没有空格
hibernate.format_sql=false//注意这些地方没有空格
</value>
</property>
注意每行结尾没有空格,不然也会造成不能自动建表的后果
Hibernate不能自动建数据表解决办法的更多相关文章
- hibernate中.hbm.xml和注解方式自动生成数据表的简单实例(由新手小白编写,仅适用新手小白)
绝逼新手小白,so 请大神指点! 如果真的错的太多,错的太离谱,错的误导了其他小伙伴,还望大神请勿喷,大神请担待,大神请高抬贵嘴......谢谢. 好了,正题 刚接触ssh,今天在搞使用.hbm.xm ...
- SpringBoot+Mybatis 自动创建数据表(适用mysql)
Mybatis用了快两年了,在我手上的发展史大概是这样的 第一个阶段 利用Mybatis-Generator自动生成实体类.DAO接口和Mapping映射文件.那时候觉得这个特别好用,大概的过程是这样 ...
- springboot项目启动-自动创建数据表
很多时候,我们部署一个项目的时候,需要创建大量的数据表.例如mysql,一般的方法就是通过source命令完成数据表的移植,如:source /root/test.sql.如果我们需要一个项目启动后, ...
- 爬虫爬数据时,post数据乱码解决办法
最近在写一个爬虫,目标网站是:http://zx.bjmemc.com.cn/,可能是为了防止被爬取数据,它给自身数据加了密.用谷歌自带的抓包工具也不能捕获到数据.于是下了Fiddler. F ...
- A.CTable 自动创建数据表
1.添加依赖 <!-- A.CTable 自动创建数据表 --> <dependency> <groupId>com.gitee.sunchenbin.mybati ...
- HTTP 错误 500.19 请求的页面的相关配置数据无效 解决办法
"HTTP 错误 500.19 请求的页面的相关配置数据无效" 解决办法 HTTP 错误 500.19 - Internal Server Error无法访问请求的页面,因为该 ...
- 新版本ADT创建Android项目无法自动生成R文件解决办法
本人使用的是ADT是Version 23.0.2,支持Android 6.0之后的系统环境,最高版本23,在创建Android项目的时候,每次创建项目选择“Compile With”低于6.0版本的时 ...
- 误删Django的model中的表解决办法
误删Django的model中的表解决办法 1.model里面的表格实际的操作都在migrations文件夹中,里面记录了操作过程,当在database和model中删除表格时要注意初始化数据库时会报 ...
- [转]Hibernate不能自动建表解决办法及Hibernate不同数据库的连接及SQL方言
最近开始学Hibernate,看的是李刚的那本<轻量级java ee企业应用实战>.头一个hibernate程序,我原原本本的按照书上例子写下来,同时只是改动了些mysql的连接参数,并且 ...
随机推荐
- DHTML概述
<!-- DHTML概述:动态的HTML.不是一门语言,是多项技术综合体的简称. 其中包含了HTML.CSS.DOM.JavaScript. 这四个技术在动态HTML页面效果定义时,都处于什么样 ...
- angularJs表单校验(超级详细!!!)
html代码 <!DOCTYPE html> <html ng-app="angularFormCheckModule"> <head> < ...
- AspNet Mvc 路由解析中添加.html 等后缀 出现404错误的解决办法
使用Mvc 有时候我们希望,浏览地址以.html .htm 等后缀名进行结尾. 于是我们就在RouteConfig 中修改路由配置信息,修改后的代码如下 routes.IgnoreRoute(&quo ...
- UIView添加手势
_shareImage.userInteractionEnabled=YES; UITapGestureRecognizer *imagegesture=[[UITapGestureRecognize ...
- Visual C++ 中的重大更改
https://technet.microsoft.com/zh-cn/learning/bb531344.aspx 当你升级到 Visual C++ 编译器的新版本后,可能会在之前编译并正常运行 ...
- 查看IIS哪个应用程序池占用CPU过高
1. 进入cmd 2. %systemroot%\system32\inetsrv\AppCmd.exe list wp 这样就能找到活动的应用程序池的PID了 3. 对照资源管理器的PI ...
- HTTPS与强制门户
强制门户 http://www.whatis.com.cn/word_5182.htm 强制网络门户(captive portal)是一个Web页面,它是使用公共访问网络的用户在被授予访问权限前必须访 ...
- SpringMVC源码剖析(一)- 从抽象和接口说起
SpringMVC作为Struts2之后异军突起的一个表现层框架,正越来越流行,相信javaee的开发者们就算没使用过SpringMVC,也应该对其略有耳闻.我试图通过对SpringMVC的设计思想和 ...
- Linux下使用shell实现上传linux下某个目录下所有文件到ftp
首先我们需要搞清楚单个文件怎么上传,把这个单文件上传到ftp上的实现命名为一个:upload_to_ftp_command.sh 之后,需要弄清楚怎么实现遍历一个目录下的所有文件的,把这个遍历某个目录 ...
- JAVA线程池原理详解二
Executor框架的两级调度模型 在HotSpot VM的模型中,JAVA线程被一对一映射为本地操作系统线程.JAVA线程启动时会创建一个本地操作系统线程,当JAVA线程终止时,对应的操作系统线程也 ...