现在的位置: 首页 > 综合 > 正文

hibernate 实行原生sql insert数据无法插入到数据库

2018年05月22日 ⁄ 综合 ⁄ 共 419字 ⁄ 字号 评论关闭

使用hibernate session 执行sql添加时 控制台打印执行语句 可数据库就是没反应 经过反复检测sql实在没有问题 最后从数据库表找问题 发现引擎应选择InnoDB!!建表默认是引擎是MyISAM
不支持事务处理;需要定义事务来提交结果

Session session = this.getDao().getHibernateTemplate().getSessionFactory().openSession();

Transaction tx = session.beginTransaction();//定义事务

tx.begin();//开启事务

int date = session.createSQLQuery(sql).executeUpdate();

tx.commit();//提交

基本的差别为:MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快,但是不提供事务支持,

抱歉!评论已关闭.