首页 > 解决方案 > 从 CSV 加载的键值对动态创建属性名称

问题描述

我正在尝试从 Neo4j 中的 csv 文件加载数据。在我的文件中,我有键和值列。我需要使用键设置节点属性的名称,然后我想设置此键的值。举个例子,

Key   | Value
______________
Name | John
Age  | 23

节点上的属性应如下所示Name: John, Age: 23。我的SET命令是错误的,但我不知道如何解决它。如果你能帮助我,那就太好了。

LOAD CSV WITH HEADERS FROM 'file:///properties.csv' AS line
MATCH (n {id:line.ID})
SET n[line.KEY] = line.Value

谢谢

标签: neo4jcypher

解决方案


正如Mark Needham 的博客文章中所述,您可以使用apoc.create.setProperty().

所以,而不是

SET n[line.KEY] = line.Value

利用

CALL apoc.create.setProperty(n, line.KEY, line.Value)

推荐阅读