[英]Neo4j: create unique not supported in JDBC
我必須在Neo4j中創建唯一的節點,但是此查詢不正確,因為Neo4j說
CREATE UNIQUE不支持此模式
List<String> users = pUsers.collect();
for(String u : users){
if(u.equals("error"))
continue;
else{
String cql = " CREATE UNIQUE (n:User {value:'" + u +"'})";
st.executeUpdate(cql);
}
我該如何解決?
在使用CREATE UNIQUE之前,您需要MATCH
一個節點。 之后,使用匹配的節點在圖形中創建唯一的模式。 CREATE UNIQUE
將使圖形中的更改最少。 我相信您需要的是MERGE
。 CREATE UNIQUE文檔說:
您可能要使用MERGE而不是
CREATE UNIQUE
。 但是請注意,MERGE
不能為唯一的關系提供有力的保證。
因此,您可以將代碼修改為:
List<String> users = pUsers.collect();
for(String u : users){
if(u.equals("error"))
continue;
else{
String cql = "MERGE (n:User {value:'" + u +"'})";
st.executeUpdate(cql);
}
}
看一下這個答案 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.