Per eliminare nodi e relazioni utilizzando Cypher, utilizzare DELETE
clausola.
Il DELETE
viene utilizzata all'interno di MATCH
istruzione per eliminare tutti i dati corrispondenti.
Quindi, il DELETE
La clausola è usata nello stesso punto in cui abbiamo usato il RETURN
clausola nei nostri esempi precedenti.
Esempio
La seguente istruzione elimina l'Album nodo chiamato Killer :
MATCH (a:Album {Name: "Killers"}) DELETE a
È una buona idea controllare che stai per eliminare i dati corretti prima di eliminarli effettivamente.
Per fare ciò, costruisci la tua dichiarazione con un RETURN
prima la clausola, quindi eseguirla. Ciò ti consente di verificare se intendi eliminare i dati corretti o meno. Una volta che sei soddisfatto della corrispondenza dei dati corretti, cambia semplicemente il RETURN
clausola in un DELETE
clausola.
Eliminazione di più nodi
Puoi anche eliminare più nodi in una volta sola. Crea semplicemente il tuo MATCH
istruzione per includere tutti i nodi che desideri eliminare.
MATCH (a:Artist {Name: "Iron Maiden"}), (b:Album {Name: "Powerslave"}) DELETE a, b
Eliminazione di tutti i nodi
È possibile eliminare tutti i nodi dal database semplicemente omettendo qualsiasi criterio di filtro. Proprio come quando abbiamo selezionato tutti i nodi dal database, puoi eliminarli anche tu.
MATCH (n) DELETE n
Eliminazione di nodi con relazioni
C'è un piccolo problema con l'eliminazione dei nodi. E cioè, puoi eliminare i nodi solo se non hanno alcuna relazione. In altre parole, devi eliminare tutte le relazioni prima di eliminare il nodo stesso.
Se provi a eseguire il DELETE
sopra istruzione sui nodi che hanno relazioni, vedrai un messaggio di errore come questo:
Questo messaggio di errore ci dice che dobbiamo eliminare tutte le relazioni prima di eliminare il nodo.
Fortunatamente, c'è un modo semplice e veloce per farlo. Lo tratteremo in seguito nell'eliminazione delle relazioni.