Neo4j,检查节点是否存在,如果不存在,则创建它

Neo4j,检查节点是否存在,如果不存在,则创建它,neo4j,Neo4j,我正在通过PHP访问neo4j。我是新手,想知道解决一个简单案件的最佳方法 我需要检查特定节点是否已经存在(基于自动索引比较),如果已经存在,则设置一些属性,如果不存在,则使用一些属性创建它 请考虑我通过PHP.< /P>使用CypER查询。 非常感谢。您可以使用Cypher进行以下操作: 或者使用Composer(首选方法) 可以通过REST接口执行密码查询(如果从PHP访问,必须使用REST接口)。文档如下: 快速插入:我是Neo4jPHP的作者,它处理密码查询等。您可以使用Composer

我正在通过PHP访问neo4j。我是新手,想知道解决一个简单案件的最佳方法

我需要检查特定节点是否已经存在(基于自动索引比较),如果已经存在,则设置一些属性,如果不存在,则使用一些属性创建它

请考虑我通过PHP.< /P>使用CypER查询。


非常感谢。

您可以使用Cypher进行以下操作: 或者使用Composer(首选方法) 可以通过REST接口执行密码查询(如果从PHP访问,必须使用REST接口)。文档如下:


快速插入:我是Neo4jPHP的作者,它处理密码查询等。您可以使用Composer(首选方法)或直接从github()获取它。

您可以使用Cypher实现以下目的: 或者使用Composer(首选方法) 可以通过REST接口执行密码查询(如果从PHP访问,必须使用REST接口)。文档如下:


快速插入:我是Neo4jPHP的作者,它处理密码查询等。您可以使用Composer(首选方法)或直接从github()获取它。

这是直接从Neo4j文档中的“使用cypher创建唯一节点”一节中获取的。请注意,如果具有该特定唯一属性的节点已存在,则不会再次创建该节点。这是链接

获取或创建唯一节点(创建)

如果该节点在唯一索引中不存在,则会创建该节点

示例请求

POST http://localhost:7474/db/data/index/node/people?uniqueness=get_or_create
Accept: application/json; charset=UTF-8
Content-Type: application/json
{
  "key" : "name",
  "value" : "Tobias",
  "properties" : {
  "name" : "Tobias",
  "sequence" : 1
 }
}

这直接来自Neo4j文档中的“使用cypher创建唯一节点”一节。请注意,如果具有该特定唯一属性的节点已存在,则不会再次创建该节点。这是链接

获取或创建唯一节点(创建)

如果该节点在唯一索引中不存在,则会创建该节点

示例请求

POST http://localhost:7474/db/data/index/node/people?uniqueness=get_or_create
Accept: application/json; charset=UTF-8
Content-Type: application/json
{
  "key" : "name",
  "value" : "Tobias",
  "properties" : {
  "name" : "Tobias",
  "sequence" : 1
 }
}

谢谢Josh,我遇到的问题是,如果我使用de-crete unique(肯定是我做错了什么),目标节点(如果丢失,我需要创建的节点)会被创建好几次。案例如下,我有一个人的节点,然后我想将其链接到一个公司,以建立雇佣关系,在创建公司节点之前,我只需要检查它是否已经存在(通过某些id,如company_id=XX)。感谢againThanks Josh,我遇到的问题是,如果我使用de-crete unique(肯定我做错了什么),目标节点(如果丢失,我需要创建的节点)会被创建多次。案例如下,我有一个人的节点,然后我想将其链接到一个公司,以建立雇佣关系,在创建公司节点之前,我只需要检查它是否已经存在(通过某些id,如company_id=XX)。再次感谢