导入CSV创建没有属性的节点

时间:2016-03-15 15:56:53

标签: neo4j cypher

我尝试使用IMPORT CSV创建一组带标签的节点,如下所示:

LOAD CSV WITH HEADERS FROM "file:/D:/OpenData/ProKB/tmp/ErrLink.csv" as line 
CREATE (e:ErrLink {kbid:line.Kbid, errnum:line.Errnum })

CSV文件如下所示:

"Kbid:string","Errnum:string"
"S000001080","64"
"S000001096","129"

我遇到的问题是我正在创建节点,而且它们都是无属性的。如果我删除标题字段上的:string 后缀,则加载有效。

这与文档第29.1章所说的相反:

29.1。 CSV文件标题格式

每个数据源的标题行指定应如何解释字段。标题行使用与其余数据相同的分隔符。

标题包含每个字段的信息,格式为: name:field_type 名称用作值的属性键,在其他情况下会被忽略。以下 field_type 设置可用于节点和关系:

属性值使用int,long,float,double,boolean,byte,short,char,string之一来指定数据类型。如果没有给出数据类型,则默认为string。要定义数组类型,请在类型中附加[]。默认情况下,数组值由;分隔,但可以指定不同的分隔符。

此功能无效,还是仅限于导入工具而非语言?

1 个答案:

答案 0 :(得分:1)

文档的这一部分适用于Import Tool,这与Cypher语言的Load CSV条款不同。

如果您使用后者,则不会记录该特殊标题格式,并且显然不受支持。