【问题标题】:Neo.ClientError.Statement.ExternalResourceFailed on MacMac 上的 Neo.ClientError.Statement.ExternalResourceFailed
【发布时间】:2024-01-16 23:46:01
【问题描述】:

我有一个通过代码生成的 CSV 文件。我想使用以下密码查询将生成的 CSV 文件导入 neo4j。

 LOAD CSV WITH HEADERS FROM 'file:////Users/{user}/Desktop/neo4j-importer/tmp/temp_data.csv'

我更改了以下配置变量

注释掉dbms.directories.import=import。 并设置dbms.security.allow_csv_import_from_file_urls=true

问题是我得到以下错误:

Neo.ClientError.Statement.ExternalResourceFailed: 
Couldn't load the external resource at: 
file:/Users/{user}/Library/Application%20Support/Neo4j%20Desktop/Application/neo4jDatabases/database-c517b267-220d-4b7a-be26-813d5b64a51a/installation-3.5.3/import/Users/{user}/Desktop/neo4j-importer/tmp/temp_data.csv

我的意思是部分正确,只是 /Users/{user}/Library/Application%20Support/Neo4j%20Desktop/Application/neo4jDatabases/database-c517b267-220d-4b7a-be26-813d5b64a51a/installation-3.5.3/import/ 位不正确......关于如何解决这个奇怪的文件路径问题的任何建议?

【问题讨论】:

  • 表示找不到文件。您可以将文件: temp_data.csv 放在“import”文件夹中,然后再次执行您的密码。
  • 这是一个潜在的解决方案。您是否有一种方法可以动态检测每次启动 graph.db 时生成的新数据库文件?因为导入文件位于其中...

标签: macos csv neo4j load neo4j-desktop


【解决方案1】:

尝试更改配置设置以指向包含导入的目录:

dbms.directories.import=/Users/{user}/Desktop/neo4j-importer/tmp

然后将 Cypher 查询更改为仅指定 CSV 文件:

LOAD CSV WITH HEADERS FROM 'file:///temp_data.csv'
...

【讨论】:

  • 我已经尝试过了,仍然使用默认文件位置“导入”
  • 修改配置后重启服务器了吗?
最近更新 更多