在图数据库neo4j中,普通的增删改查比较容易实现,cypher查询语言提供了相应的语句进行操作。但是在修改标签本身的名称,以及修改关系本身的类型时,cypher查询语言却没有直接的语句可供使用。
图1是待修改的标签名称,原来的标签名称是“硬件类型”,如果我要想修改为“取证对象”,有两种办法可供选择。其一是在编程语言中(比如java)使用cypher的match语句全部读取后,再使用create语句重新创建标签名;其二比较简单,可以直接在图数据库界面输入cypher多重语句进行操作。示例如下:
match(n:硬件类型) remove n:硬件类型 set n:取证对象
便可以完成修改标签名称的操作了,使用汉语搜索了一个下午,都没有找到解决方案,使用英语在google里很快便检索到了,不由的心生感叹,差一点我就要写几百行java代码了。
图1 待修改标签名称
同理,如果我想要修改图2中的关系类型,将“拥有”改成“包括”,也是可以使用多重语句进行操作。示例如下:
match(n)-[r:拥有]->(m) create(n)-[r2:包括]->(m) set r2=r with r delete r
图2 待修改关系类型