98 votes

Supprimer tous les noeuds et relations dans neo4j 1.8

Je sais que cette question est déjà posée par de nombreuses personnes.
pour mes recherches, voici quelques questions posées auparavant

  1. Comment supprimer toutes les relations dans un graphe neo4j ?
  2. https://groups.google.com/forum/#!topic/neo4j/lgIaESPgUgE

Mais après tout, ça ne peut toujours pas résoudre nos problèmes,
nous voulons juste supprimer "TOUS" les noeuds et "TOUTES" les relations

enter image description here

supposons qu'on supprime "TOUS", on peut voir qu'il en reste 0 noeud, 0 propriété et 0 relation

Voici la capture d'écran que j'ai prise après avoir exécuté la suppression "ALL" suggérée par le forum.

Ma question est toujours la même : comment supprimer tous les nœuds et toutes les relations dans neo4j ?

270voto

Bob B Points 740

À partir de la version 2.3.0 et jusqu'à la version 3.3.0

MATCH (n)
DETACH DELETE n

Docs

Pré 2.3.0

MATCH (n)
OPTIONAL MATCH (n)-[r]-()
DELETE n,r

Docs

6voto

ulkas Points 1952

Vous le faites probablement correctement, seulement le tableau de bord montre juste l'ID le plus élevé pris, et donc le nombre de noeuds "actifs", les relations, bien qu'il n'y en ait pas. c'est juste informatif.

pour être sûr d'avoir un graphique vide, exécutez cette commande :

START n=node(*) return count(n);
START r=rel(*) return count(r);

si les deux vous donnent 0, votre suppression a été réussie.

5voto

George Birbilis Points 183

Pour une grande base de données, vous devez soit supprimer la base de données du disque (après avoir arrêté le moteur, je suppose), soit utiliser quelque chose comme Cypher :

MATCH (n)
OPTIONAL MATCH (n)-[r]-()
WITH n,r LIMIT 50000
DELETE n,r
RETURN count(n) as deletedNodesCount

véase https://zoomicon.wordpress.com/2015/04/18/howto-delete-all-nodes-and-relationships-from-neo4j-graph-database/ pour plus d'informations que j'ai recueillies sur ce sujet à partir de diverses réponses

3voto

ardan7779 Points 218

Neo4j ne peut pas supprimer les noeuds qui ont une relation. Vous devez supprimer les relations avant de pouvoir supprimer les noeuds.

Mais, c'est un moyen simple de supprimer "TOUS" les nœuds et "TOUTES" les relations avec un simple chypre. Voici le code :

MATCH (n) DETACH DELETE n

--> DETACH DELETE supprimera tous les nœuds et toutes les relations par correspondance.

0voto

Shrikant Gourh Points 28

Si le nom du nœud est par exemple : abcd alors la requête ci-dessous fonctionnera :

MATCH (n:abcd)
DETACH DELETE n

Cela supprimera uniquement le nœud avec l'étiquette "abcd" et toutes ses relations.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X