Neo4j - 使用标题加载CSV的语法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Neo4j - 使用标题加载CSV的语法相关的知识,希望对你有一定的参考价值。

我刚刚开始使用Neo4j,并且一直在尝试用来自CSV的小样本数据在Neo4j社区中创建我的第一个项目。我一直收到无效的输入/语法错误(见下图)。

问题可能是几个地方:

  1. 我可能没有正确设置我的项目
  2. 我可能没有把文件放在正确的位置
  3. 我可能没有正确使用语法

这是我一直用来尝试加载文件的Cypher:

LOAD CSV WITH HEADERS FROM 'C:UsersDianaDocumentsNattosphereNatto_Sample.csv' AS line
CREATE (n: Natto_Variety{Product_UID: line.Product_UID, Product_Manufacturer: line.Product_Manufacturer, Product_Weight_g: line.Product_Weight_g, Product_Flavoring: line.Product_Flavoring})   

我尝试了几种方法,并创建了一个简化的文件,但每次都得到相同的错误:

Invalid input 's': expected org$neo4j$cypher$internal$compiler$v2_2$parser$Strings$$HexDigit (line 1, column 33 (offset: 32))
"LOAD CSV WITH HEADERS FROM 'C:UsersDianaDocumentsNattosphereNatto_Sample.csv' AS line"

在GUI的底部,另一个错误是:

"Neo.ClientError.Statement.InvalidSyntax"

知道这里可能会发生什么吗?

-D

答案

我想你必须这样做:

LOAD CSV WITH HEADERS FROM 'file:C:/Users/Diana/Documents/Nattosphere/Natto_Sample.csv' 

如果这不起作用,请尝试:

LOAD CSV WITH HEADERS FROM 'file://C:UsersDianaDocumentsNattosphereNatto_Sample.csv' 

见:http://neo4j.com/developer/guide-import-csv/

另一答案

首先,您必须在设置dbms.security.allow_csv_import_from_file_urls时设置为true

其次,你必须设置neo4J将在dbms.directories.import中搜索csv的位置

设置这些项目时,必须将csv文件复制到我们设置dbms.directories.import的文件夹中

后来在Cypher:

LOAD CSV FROM'file:///Natto_Sample.csv'

*如果您有文件夹到文件夹...使用此字符/路由您的URL

另一答案

CSV Import Guide中所述,使用标头加载csv的语法是:

LOAD CSV WITH HEADERS FROM "file-url" AS line

其中,本地文件的file-url是:

file:///data.csv 

将csv文件放在导入目录中,这应该有效

另一答案

您不需要编写C:引用:

LOAD CSV WITH HEADERS FROM 'file:/Users/Diana/Documents/Nattosphere/Natto_Sample.csv'

以上是关于Neo4j - 使用标题加载CSV的语法的主要内容,如果未能解决你的问题,请参考以下文章

正在加载CSV Neo4j“ Neo.ClientError.Statement.SemanticError:无法使用Test1'的空属性值合并节点”

根据节点的 id 将节点从 CSV 加载到 Neo4j 中?

Neo4j 永远加载

Neo4J入门笔记[2]---导出数据为CSV

Neo4j LOAD CSV错误:查询无法以LOAD CSV结束

使用JS将文件加载到neo4j