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

问题描述 投票:2回答:4

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

问题可能是几个地方:

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

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

LOAD CSV WITH HEADERS FROM 'C:\Users\Diana\Documents\Nattosphere\Natto_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:\Users\Diana\Documents\Nattosphere\Natto_Sample.csv' AS line"

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

"Neo.ClientError.Statement.InvalidSyntax"

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

-D

neo4j
4个回答
0
投票

我想你必须这样做:

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

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

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

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


0
投票

首先,您必须在设置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


0
投票

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

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

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

file:///data.csv 

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


-1
投票

您不需要编写C:引用:

LOAD CSV WITH HEADERS FROM 'file:/Users/Diana/Documents/Nattosphere/Natto_Sample.csv'
© www.soinside.com 2019 - 2024. All rights reserved.