For at slette noder og relationer ved hjælp af Cypher, brug DELETE klausul.
DELETE klausul bruges i MATCH erklæring for at slette de data, der blev matchet.
Så DELETE klausulen bruges samme sted, som vi brugte RETURN klausul i vores tidligere eksempler.
Eksempel
Følgende erklæring sletter albummet node kaldet Killers :
MATCH (a:Album {Name: "Killers"}) DELETE a Det er en god idé at kontrollere, at du er ved at slette de rigtige data, før du rent faktisk sletter dem.
For at gøre dette skal du konstruere din erklæring med en RETURN klausul først, og kør den derefter. Dette giver dig mulighed for at kontrollere, om du vil slette de korrekte data eller ej. Når du er sikker på, at du matcher de korrekte data, skal du blot skifte RETURN klausul ind i en DELETE klausul.
Sletning af flere noder
Du kan også slette flere noder på én gang. Du skal blot konstruere din MATCH sætning for at inkludere alle noder, du gerne vil slette.
MATCH (a:Artist {Name: "Iron Maiden"}), (b:Album {Name: "Powerslave"})
DELETE a, b Sletning af alle noder
Du kan slette alle noder fra databasen ved blot at udelade eventuelle filtreringskriterier. Ligesom da vi valgte alle noder fra databasen, kan du også slette dem.
MATCH (n) DELETE n
Sletning af noder med relationer
Der er en lille hak med at slette noder. Og det vil sige, at du kun kan slette noder, hvis de ikke har nogen relationer. Du skal med andre ord slette eventuelle relationer, før du sletter selve noden.
Hvis du prøver at udføre ovenstående DELETE sætning på noder, der har relationer, vil du se en fejlmeddelelse som denne:
Denne fejlmeddelelse fortæller os, at vi skal slette eventuelle relationer, før vi sletter noden.
Heldigvis er der en hurtig og nem måde at gøre det på. Vi vil dække det næste i sletning af relationer.