我在 Azure 上使用 Neo4j v 4.0.3。Python 代码用于加载数据库。标准密码创建查询按预期工作:
Create (n:xxx{name:'xxx'})
但是,这不起作用:
LOAD CSV With HEADERS FROM 'https://neo4jclusterdiag.blob.core.windows.net/neo4j-import/jTags.csv?{SAS}' AS line FIELDTERMINATOR '|' MERGE (p:AncestryTag{TagId: toInteger(line.TagId),color:toString(line.Color),Label:toString(line.Label)})
CSV 很简单:
TagId|Color|Label
1000|#6ba410|Brydie Scotland
1001|#FFE300|Scroggie
1002|#e3720f|Brodie Scotland
1003|#f06158|Robertson Scotland
1004|#cb478a|Goolsby
1005|#655586|Watt Aberdeenshire
1006|#0079a3|Milne Scotland
1007|#489b9b|Hay Aberdeenshire
1008|#FFB800|Anderson
1009|#a94500|Thomas
1010|#871a13|Bain, McBain
我在 Neo4j v 4.0.3 上进行了单独的本地安装,并且 LOAD CSV 在那里工作正常。因此,Azure 数据库有些问题。
我在配置文件中做了以下更改:
#dbms.directories.import=/var/lib/neo4j/import
dbms.security.allow_csv_import_from_file_urls=true
我尝试从 python 代码或 Neo4j 浏览器中运行 LOAD CSV。两者都有相同的错误:
neobolt.exceptions.ClientError: Couldn't load the external resource at: https://neo4jclusterdiag.blob.core.windows.net/neo4j-import/jTags.csv?{SAS}
在浏览器中,我还看到:
Neo.ClientError.Statement.ExternalResourceFailed
我可以将它放在我的浏览器地址窗口中并检索文件:
https://neo4jclusterdiag.blob.core.windows.net/neo4j-import/jTags.csv?{SAS}
因此,我的 Azure 数据库没有重新识别我尝试使用加载 csv 导入的文件存在一些特别问题。