2017-05-27 27 views
0

是否可以添加和删除已有类型的现有关系 ?向与Cypher的现有关系添加类型

我tryed这一点:

MATCH()-[r:?:A]->() 
REMOVE r:A 
SET r:B 
RETURN TYPE(r) 
// -> :?:B 

完全不工作。错误是:

Type mismatch: expected Node but was Relationship 
"remove r:A" 
     ^

回答

2

不,关系的类型是不可修改的,您需要删除关系并创建一个新关系。

这就是说,APOC Procedures有一些方便refactoring procedures执行这种重构操作,apoc.refactor.setType()应该是你所需要的。

0

像这样的东西可能会奏效:

MATCH (a)-[r:old]->(b) WITH a,r,b MERGE (a)-[:new]->(b) DELETE r; 
相关问题