Neo4Js 客户端错误 apoc.load.csv 失败的过程.由 ArrayIndexOutofBoundExcep



我是NEO4J的新手。我正在使用neo4j版本3.5.6社区版和apoc插件版本3.5.0.4。我在默认导入文件夹中有一个 CSV 文件

NR_Nodes_Agent_I_20190331_tmp.csv。出于测试目的,我编写了一个密码查询

 CALL apoc.load.csv('NR_Nodes_Agent_I_20190331_tmp.csv') yield map as row return row;

但我收到波纹管错误

Neo.ClientError.Procedure.ProcedureCallFailed: 无法调用过程 apoc.load.csv : 由: java.lang.ArrayIndexOutOfBoundsException: 1

我对此进行了一些研究,但没有成功解决我在neo4j.conf文件中取消注释语句

dbms.directories.import=import 
dbms.security.allow_csv_import_from_file_urls=true
dbms.security.procedures.whitelist=apoc.coll.*,apoc.load.*,apoc.*
  1. 确保neo4j.conf文件中有此设置:

    apoc.import.file.enabled=true
    
  2. 确保您的 CSV 文件格式正确。

    • 例如,此 CSV 文件将导致相同的ArrayIndexOutOfBoundsException: 1错误消息(请注意,单个数据行缺少第二个值,因为它的逗号比标头少一个(:

      a,b
      1
      
    • 另一方面,即使数据行在逗号后没有值,此 CSV 文件也可以工作(:

      a,b
      1,
      

      查询结果为:

      ╒════════════════╕
      │"row"           │
      ╞════════════════╡
      │{"a":"1","b":""}│
      └────────────────┘
      
    • 如果数据行有第二个值,如下所示:

      a,b
      1,2
      

      然后查询结果将是:

      ╒═════════════════╕
      │"row"            │
      ╞═════════════════╡
      │{"a":"1","b":"2"}│
      └─────────────────┘
      

最新更新