Neo4j Rest事务HTTP端点密码:在一个请求中创建多个唯一关系

Neo4j Rest事务HTTP端点密码:在一个请求中创建多个唯一关系,rest,neo4j,relationship,Rest,Neo4j,Relationship,如何在一个请求中创建多个关系? 以下示例请求导致以下错误:Neo.ClientError.Statement.InvalidSyntax,“消息”:“WITH”在CREATE UNIQUE和MATCH之间是必需的(第1行,第281列) 终点: 事务密码HTTP端点 请求: {"statements":[{"statement":" MATCH (nA0:Test{name:'Test B'}), (nB0:Test{name:'Test A'}) CREATE UNIQUE (nA

如何在一个请求中创建多个关系? 以下示例请求导致以下错误:Neo.ClientError.Statement.InvalidSyntax,“消息”:“WITH”在CREATE UNIQUE和MATCH之间是必需的(第1行,第281列) 终点: 事务密码HTTP端点

请求:

{"statements":[{"statement":" 
  MATCH (nA0:Test{name:'Test B'}), (nB0:Test{name:'Test A'}) 
  CREATE UNIQUE (nA0)-[r:has_parent]->(nB0) 
  MATCH(nA1:Test{name:'Test C'}), (nB1:Test{name:'Test A'})  
  CREATE UNIQUE (nA1)-[r:has_parent]->(nB1)"}]}
如果我只提交一个匹配项,它就会工作。。。CREATE UNIQUE语句,是否需要特定的分隔符

非常感谢

编辑: 将语句分组为一个匹配项并创建独特的作品,但是将语句分开更适合我的学生

{"statements":[{"statement":" MATCH(nSrc0:Test{name:'Test B'}),(nTrgt0:Test{name:'Test A'}),(nSrc1:Test{name:'Test C'}),(nTrgt1:Test{name:'Test A'})  CREATE UNIQUE (nSrc0)-[r0:has_parent]->(nTrgt0), (nSrc1)-[r1:has_parent]->(nTrgt1)"}]}

正如错误所说,您必须在CREATE UNIQUE和next匹配项之间添加WITH,以区分写从句和读从句

  • 将这两条语句放在请求中的两个单独条目中
  • 使用参数
  • 使用“合并”而不是“创建唯一”
  • 见:

    {"statements":[
    
    {"statement":
     "MATCH (a:Test{name:{name_a}}), (b:Test{name:{name_b}}) MERGE (a)-[:has_parent]->(b)",
     "parameters":{"name_a":"Test B","name_b":"Test A"}},
    
    {"statement":
     "MATCH (a:Test{name:{name_a}}), (b:Test{name:{name_b}}) MERGE (a)-[:has_parent]->(b)",
     "parameters":{"name_a":"Test C","name_b":"Test A"}},
    ...
    ]}