Java Hibernate不在MySQL上创建外键约束
当我的表映射完成时,当我查看我的DB表时,我正在使用Hibernate和MySQL成功地创建了它,但它们不是外键约束,而是创建了列 当我尝试在子表中插入记录时,当我将父表中不存在的id放入外键列时,也会插入该行 我的桌面引擎是innoDB 如果我将方言更改为MS-SQL,则会使用外键约束创建表。对不起,用户 实际上,我的DBA没有获得ALTER命令的许可,我对此有异议 这就是为什么,当一个带有外键的表要创建时,首先执行create命令,然后执行ALTER命令Java Hibernate不在MySQL上创建外键约束,java,mysql,sql-server,hibernate,dialect,Java,Mysql,Sql Server,Hibernate,Dialect,当我的表映射完成时,当我查看我的DB表时,我正在使用Hibernate和MySQL成功地创建了它,但它们不是外键约束,而是创建了列 当我尝试在子表中插入记录时,当我将父表中不存在的id放入外键列时,也会插入该行 我的桌面引擎是innoDB 如果我将方言更改为MS-SQL,则会使用外键约束创建表。对不起,用户 实际上,我的DBA没有获得ALTER命令的许可,我对此有异议 这就是为什么,当一个带有外键的表要创建时,首先执行create命令,然后执行ALTER命令 在我的例子中,CREATE命令成功执
在我的例子中,CREATE命令成功执行,但ALTER命令没有执行,因为它的dnt没有权限。它们的映射代码是什么?几天来,我一直在努力理解为什么一些单元测试在我的例子中有效,而在我的同事的例子中无效。原因是我没有给hibernate单元测试用户正确的权限。。。它什么也没说,无法找出事情发生的原因。添加权限后,现在每个人的测试都失败了。