Использование py2neo v4 для подключения к моей базе данных Neo4j, и я не могу удалить узлы через py2neo, выполнив запрос, который отлично работает в Cypher в браузере.Конечно, нет никакой реальной документации ни для Neo4j, ни для py2neo, так что, надеюсь, я могу получить некоторую помощь здесь.Есть похожие вопросы, но с тех пор и Neo4j, и py2neo имеют новые версии, и эти вопросы / ответы либо для других конкретных случаев, либо являются устаревшими методами.
Во-первых, я определяю эту функцию:
def deleteNode(thisNodeID):
graph.run("MATCH (n) where id(n) = $nodeID DETACH DELETE n",
parameters={"nodeID":thisNodeID})
Затем я вызываю функцию следующим образом:
badObjectIDs = [268569,268535,268534]
for badID in badObjectIDs:
deleteNode(badID)
Она работает без каких-либо проблем, но ничего не удаляет, и узлы с этими идентификаторами все еще находятся в базе данных, когда я выполняю поиск через браузер.
Я также пытался использовать метод graph.delete()
py2neo, но, опять же, я не смог заставить что-либо работать, потому что в документации нет описания или примеров, чтобы заставить его работать.Я даже не смог найти способ получить узлы по идентификаторам в документации.Что-то вроде
graph.delete(matcher.match("Person"))
должно удалить все узлы с меткой "Person", но вместо этого выдает ошибку
TypeError: No method defined to delete object <py2neo.matching.NodeMatch object at 0x0000026F52A8DC50>
Так что на самом деле это просто основной вопрос при использовании py2neo, который долженбыть ясно объясненным в документации или руководствах для начинающих, но, опять же, нет примеров использования любого из этих методов, где бы я мог найти.
Как удалить узлы из моей базы данных Neo4j с помощью py2neo?