Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用hibernate关闭外部约束?_Java_Mysql_Database_Hibernate - Fatal编程技术网

Java 如何使用hibernate关闭外部约束?

Java 如何使用hibernate关闭外部约束?,java,mysql,database,hibernate,Java,Mysql,Database,Hibernate,我在两个数据库之间导入和导出,当我想向新数据库添加一些选项卡时,会出现与约束相关的错误。 我知道如何使用mySQL直接实现这一点: SET FOREIGN_KEY_CHECKS=0 但是,我想使用类似sision或query的东西将此命令发送到数据库。 我试过这样的方法: Query q = session2.createQuery("SET FOREIGN_KEY_CHECKS=0"); 这也没用 使用createNativeQuery。(我认为这是JPA方法,请参阅周围的createSq

我在两个数据库之间导入和导出,当我想向新数据库添加一些选项卡时,会出现与约束相关的错误。 我知道如何使用mySQL直接实现这一点:

SET FOREIGN_KEY_CHECKS=0
但是,我想使用类似sision或query的东西将此命令发送到数据库。 我试过这样的方法:

Query q = session2.createQuery("SET FOREIGN_KEY_CHECKS=0");

这也没用

使用
createNativeQuery
。(我认为这是JPA方法,请参阅周围的
createSqlQuery
或类似内容…)我不会禁用约束检查,而是分析它们被违反的原因并修复它。在所有这些约束都存在之后,可能是有原因的。而且“createSqlQuery”也不起作用。@Thomas我知道数据库中的问题,当我在另一个表之前添加表时,它只是抱怨约束,但这并不危险,我有65个表,我想自动完成这项工作。当您添加一个表时,您不应该有任何问题,因为在这些表中添加/更改行时会执行约束检查。无论如何,即使自动执行,您仍然应该使用正确的顺序(在这种情况下,您需要定义顺序)。作为替代方案,您可以尝试在创建和填充表之后添加约束,尽管我不希望这样。