Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.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_Hibernate - Fatal编程技术网

Java 如何在Hibernate中创建插入忽略查询?

Java 如何在Hibernate中创建插入忽略查询?,java,hibernate,Java,Hibernate,Hibernate必须在具有唯一字段的表中进行插入。我想忽略重复的条目,以便我的程序继续运行。在MySQL中,我会简单地说INSERT IGNORE,但我不知道如何在Hibernate中做到这一点。有什么建议吗?谢谢 您是否尝试过使用@SQLInsert?这样,您就可以使用自己的自定义SQL覆盖Hibernate语句,并使用INSERT IGNORE: @SQLInsert(sql="INSERT IGNORE INTO CUSTOMER(id,name) VALUES(?,?)") class

Hibernate必须在具有唯一字段的表中进行插入。我想忽略重复的条目,以便我的程序继续运行。在MySQL中,我会简单地说
INSERT IGNORE
,但我不知道如何在Hibernate中做到这一点。有什么建议吗?谢谢

您是否尝试过使用
@SQLInsert
?这样,您就可以使用自己的自定义SQL覆盖Hibernate语句,并使用
INSERT IGNORE

@SQLInsert(sql="INSERT IGNORE INTO CUSTOMER(id,name) VALUES(?,?)")
class Customer{
   ...
}

如果您使用的是简单的SQL查询, 使用以下代码

               Query query = session.createSQLQuery("INSERT IGNORE INTO user (name,username) VALUES (:name,:username)");
               query.setParameter("name", name);
               query.setParameter("username", username);
               int i= query.executeUpdate();