0

PHP経由でneo4jにアクセスしています。私はこれが初めてで、単純なケースを解決するための最良の方法を知りたいです。

特定のノードが (auto_index の比較に基づいて) 既に存在するかどうかを確認する必要があります。存在する場合はいくつかのプロパティを設定し、存在しない場合はいくつかのプロパティで作成します。

PHP を介して Cypher クエリを使用していることを考慮してください。

どうもありがとう。

4

2 に答える 2

3

これにはCypherを使用できます:http://docs.neo4j.org/chunked/milestone/query-create-unique.html#create-unique-create-node-if-missing またはComposer(推奨される方法)CypherクエリはRESTインターフェースを介して実行できます(PHPからアクセスする場合は使用する必要があります)。ドキュメントはこちら:http ://docs.neo4j.org/chunked/milestone/rest-api-cypher.html#rest-api-send-パラメータ付きクエリ

クイックプラグ:私はNeo4jPHPの作成者であり、Cypherクエリなどを処理します。Composer(推奨される方法)を使用するか、github(https://github.com/jadell/neo4jphp)から直接取得できます。

于 2013-03-23T21:18:11.283 に答える
0

これは、cypher を使用した一意のノードの作成に関する Neo4j ドキュメントから直接引用したものです。その特定の一意のプロパティを持つノードが既に存在する場合は、再度作成されないことに注意してください。ここにリンクがあります http://docs.neo4j.org/chunked/stable/rest-api-unique-indexes.html

一意のノードを取得または作成 (作成)

一意のインデックスにまだ存在しない場合は、ノードが作成されます。

リクエスト例

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
 }
}
于 2014-09-01T07:43:25.403 に答える