我得到一个神秘的" Neo.ClientError.Statement.InvalidSyntax"在Neo4j中加载CSV时出错

时间:2015-10-20 12:55:09

标签: csv neo4j load

对于Excel课程,当我在复制上述课程中显示的示例的第一步中被阻止时,我试图在Neo4j中加载CSV(第一次使用此应用程序):loading。

示例中使用的命令是这样的;

  1. 使用HEADERS FROM"文件加载CSV:/ path/to/file/file.csv"
  2. as row
  3. CREATE(m:movie {name:row.movi​​e})
  4. 但它给出了语法错误。我发现我可以使用 double \来修正它并添加"文件:&#34 ;;

    1. 使用HEADERS FROM" file:// C:\\ path \\ to \\ file \\ file.csv"
    2. as row
    3. CREATE(m:movie {name:row.movi​​e})
    4. Neo4j接受这种语法,处理片刻,并返回YET ANOTHER错误;

      Neo.TransientError.Statement.ExternalResourceFailure

      我在网上Neo4j控制台尝试了相同的命令(原始和我自己的),但没有运气。我可以毫无问题地使用该路径到达文件;它真的存在。 CSV文件只包含5个普通字母串,即全部。没有花哨的格式或字符。

      发生了什么?

2 个答案:

答案 0 :(得分:1)

并非神秘,Neo4j的IMPORT CSV功能在服务器配置中的导入目录中查找指定的CSV文件,该服务器配置文件位于其服务器配置文件的顶部。你的neo4j.conf文件中的(IE:dbms.directories.import=import。)

您应该在...

中创建导入目录

" C:\ Users \ [用户名] \ Documents \ Neo4j \ default.graphdb \"

如果您将CSV文件放在那里,您可以指定任何子目录或只是" file.csv"您想要使用IMPORT CSV功能导入,如下所示。

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

答案 1 :(得分:0)

尝试使用:

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

由于您的文件位于本地计算机上,因此/方案后面的第三个file前面没有主机名或地址 - 但它仍然需要存在。此外,文件URI路径分隔符应为正斜杠(即使在Windows机器上)。

如果您需要更多信息,请参阅File URI scheme Wikipedia页面。