2015-10-20 414 views
0

对于Excel课程,我尝试在Neo4j中加载CSV(第一次使用此应用程序)复制所述课程中显示的示例的第一步:加载。当在Neo4j中加载CSV时,我收到一个神秘的“Neo.ClientError.Statement.InvalidSyntax”错误

在这个例子中使用的命令是这样的;带有头部的FROM

  1. LOAD CSV “文件:/path/to/file/file.csv”
  2. 作为行
  3. CREATE(M:电影{名称:row.movi​​e})

但它给了语法错误。我发现我可以通过使用double \来修正它,并添加“file:”;带有头部的FROM

  1. LOAD CSV “文件:// C:\\路径\\到\\文件\\ FILE.CSV”
  2. 作为行
  3. CREATE(M:电影{名称:行.movi​​e})

Neo4j接受这种语法,进程一会儿,然后返回YET ANOTHER错误;

Neo.TransientError.Statement.ExternalResourceFailure

我尝试相同的命令在网上Neo4j的控制台,但没有运气(原件和我自己)。我可以毫无问题地使用该路径访问文件;它真的在那里。 CSV文件仅包含5个常规字母串,仅此而已。没有花哨的格式或字符。

发生了什么事?使用

+0

Alrighty,我想通了,如果文件被放置在保管箱它可以工作。但我认为Neo4j能够上传本地文件?有谁知道如何做到这一点? – user5284283

+0

你的文件的URL不是goog,看到这个问题:http://stackoverflow.com/questions/24438083/neo4j-csv-cypher-import 而你的文件可以是本地或遥远的,所以它将在Dropbox上工作,如果任何人都可以看到该文件。 – logisima

回答

0

尝试:继file方案

"file:///C:/path/to/file/file.csv" 

由于您的文件是在本地计算机上,第三/之前没有通过主机名或地址 - 但它仍然需要在那里。另外,文件URI路径分隔符应该是正斜杠(即使在Windows机器上)。

如果您需要更多信息,请参阅File URI scheme维基百科页面。

1

不是那么神秘,Neo4j的IMPORT CSV函数在服务器配置中的导入目录中为该数据库查找指定的CSV文件,如其服务器配置文件顶部所指定的那样。 (IE:dbms.directories.import=import在neo4j.conf文件。)

您应该创造...

“C的进口目录:\用户\ [用户名] \文档\ Neo4j的\ default.graphdb \“

如果您将CSV文件放在那里,您可以指定任何子目录或者只需要使用IMPORT CSV函数导入的”file.csv“,如下所示。

LOAD CSV WITH HEADERS FROM "file:///file.csv" AS row RETURN row LIMIT 5