首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > 其他数据库 >

jBPM4.4中配备MySQL的hibernate方言MySQLInnoDBDialect

2012-10-14 
jBPM4.4中配置MySQL的hibernate方言MySQLInnoDBDialect最初的jbpm.hibernate.cfg.xml中,对MySQL的方言配置

jBPM4.4中配置MySQL的hibernate方言MySQLInnoDBDialect
最初的jbpm.hibernate.cfg.xml中,对MySQL的方言配置成了org.hibernate.dialect.MySQLDialect,发布流程的时候遇到下述错误:

Cannot delete or update a parent row: a foreign key constraint fails

Could not synchronize database state with session

将MySQL方言修改为org.hibernate.dialect.MySQLInnoDBDialect问题解决

看着上面好像问题是解决了:不过我却发现了一个问题,就是自动建表的问题,先看下面的代码:



这句配置 <property name="hibernate.hbm2ddl.auto">update</property>是习以为常的自动建表语句,它的属性值有:create , update ,create-drop等等,代表不同的建表模式。
我是调用java代码来建表的,如下:

public static void main(String arg[]) {//必须使用的,流程引擎ProcessEngine processEngine = Configuration.getProcessEngine();RepositoryService repositoryService = processEngine.getRepositoryService();}


结果发现这样的方式只能用org.hibernate.dialect.MySQLInnoDBDialect这个方言才能使用,换成了org.hibernate.dialect.MySQLInnoDBDialect的话只能删除,不能重新建表了。。。。真是个奇怪的问题?有没有知道原因的?

热点排行