如何将 *.csv 中的所有列加载到 Neo4j 节点中

Dir*_*ten 3 csv load neo4j

假设我需要加载一个 csv 文件 c:\myData.csv

alfa,beta,gamma
0001,1000,thousant
0002,2000,two-K
...
Run Code Online (Sandbox Code Playgroud)

在节点

(:myData{alfa:0001,beta:1000,gamma'thousant'})
(:myData{alfa:0002,beta:2000,gamma'two-k'})
Run Code Online (Sandbox Code Playgroud)

有没有一种方法可以将所有列导入到属性中而无需一一指定?

就像是

LOAD CSV WITH HEADERS FROM 'file:/c:/myData.csv' AS line set line:myData create line
or
LOAD CSV WITH HEADERS FROM 'file:/c:/myData.csv' AS line create (:myData {line.*})
Run Code Online (Sandbox Code Playgroud)

小智 5

在尝试了不同的选项 Neo4j 3.3.2 后,以下对我有用:

USING PERIODIC COMMIT 10000
LOAD CSV WITH HEADERS FROM 'file:///apples.csv' AS appleAllLineProperties
CREATE(apple:Apple)
set apple += appleAllLineProperties
Run Code Online (Sandbox Code Playgroud)

几个观察:

  1. CREATE(apple: {appleAllLineProperties}) 导致错误,因为 Neo4j 期望 appleAllLineProperties是一个参数——这在这个位置也是无效的。
  2. Neo4j 期望文件位于以下文件夹中

    C:\Users\\AppData\Roaming\Neo4j Desktop\Application\neo4jDatabases\database-\installation-3.3.2\import