2012-11-27 5 views
5

Dans Neo4j, si je supprime un nœud indexé, dois-je d'abord retirer ce nœud de l'index ou l'index sera-t-il mis à jour automatiquement?Supprimer des nœuds indexés dans Neo4j

Voici un petit (non testé) par exemple:

val index = graphDb.index() 
val someIdx = index.forNodes("someIdx") 
val someNode = graphDb.createNode() 
someIdx.add(someNode, "key", "value") 

Et puis:

//remove from someIdx??? 
someNode.delete() 

Répondre

9

Lorsque vous supprimez un nœud, vous devez supprimer d'abord l'index. Si vous souhaitez supprimer toutes les mentions d'un noeud de l'index, voir ci-dessous:

IndexManager indexManager = db.index(); 
    Index<Node> index = indexManager.forNodes("indexName"); 
    index.remove(node); 
+0

Que se passe-t-il lorsque vous essayez d'obtenir un noeud supprimé via une requête d'index? – fynn

+0

Vous obtenez une exception, je ne peux pas citer le nom exact, mais vous essayez d'accéder à un noeud qui n'existe plus. – Nicholas

+0

Thx pour l'aide ... – fynn

Questions connexes