我正在做一个Neo4j项目,我正在尝试更新一个当前的图表。我将举一个例子来说明我正在努力实现的目标:
首先,我有以下图表:
A
/ \
B C
/ \ /* \
D E F
/*表示关系是:E -> C/表示关系是: A->B,B->D,B->E,依此类推...
所以我想要做的是能够更新这个图,例如,如果F被删除。我不想在我的服务中再次生成整个图,但是获取我在neo4j中拥有的图并对其进行更新(其中F不再存在)。
目前,我所尝试的是将图从neo4j转换到JAVA中,生成samller子图(C的子图)(这给了我两个哈希图:一个带有关系,一个带有节点)
然后逐个检查,看看它们是否相同,如果有变化,则将其替换。有没有更快的方法来做这件事?
发布于 2018-08-02 23:28:55
为此,您应该使用Cypher。
你可以只匹配你的'F‘节点,然后分离删除它。这将删除该节点及其上的所有关系。
现在假设你的节点上有标签(我假设是:Node),你可以这样做:
MATCH (f:Node {name:'F'})
DETACH DELETE f
https://stackoverflow.com/questions/51656561
复制