Neo4j导入csv数据文件
时间: 2025-07-08 09:46:14 浏览: 15
### 方法一:使用 `LOAD CSV` 命令导入数据
在 Neo4j 中,可以使用 Cypher 查询语言中的 `LOAD CSV` 命令将 CSV 文件导入数据库。以下是基本步骤:
1. **将 CSV 文件放入正确的目录**
根据配置,CSV 文件需要放在 Neo4j 的数据目录中。默认情况下,该目录为 `/var/lib/neo4j/data/databases/your-database-name/` [^4]。
2. **编写 Cypher 查询导入数据**
使用 `LOAD CSV` 命令读取 CSV 文件,并将其内容插入到图数据库中。以下是一个简单的示例代码:
```cypher
LOAD CSV WITH HEADERS FROM 'file:///your_file.csv' AS row
CREATE (:YourLabel {name: row.name, age: toInteger(row.age)})
```
在此示例中,`your_file.csv` 是 CSV 文件的名称,`YourLabel` 是节点的标签,`row.name` 和 `row.age` 分别对应 CSV 文件中的列名 [^2]。
3. **建立关系**
如果需要创建节点之间的关系,可以在导入后使用 `MATCH` 和 `MERGE` 语句建立连接。例如:
```cypher
MATCH (a:Person {name: 'Alice'})
MATCH (b:Person {name: 'Bob'})
CREATE (a)-[:KNOWS]->(b)
```
### 方法二:使用 Neo4j ETL 工具
Neo4j 提供了 ETL(Extract, Transform, Load)工具,可以从 SQL 数据库、CSV 文件等数据源导入数据并生成图模型。可以通过访问 [Neo4j 官方文档](https://neo4j.com/developer/guide-importing-data-and-etl/) 获取更多详细信息 [^3]。
### 方法三:使用 Docker 容器导入数据
如果使用 Docker 部署 Neo4j 数据库,可以通过挂载本地目录的方式导入数据。启动容器时,使用 `-v` 参数将本地目录映射到容器内部的 `/var/lib/neo4j/import` 目录。这样可以直接从主机访问 CSV 文件进行导入 [^1]。
```bash
docker run -d \
--name neo4j \
-p 7474:7474 -p 7687:7687 \
-v $HOME/workspace/neo4j/import:/var/lib/neo4j/import \
-e NEO4J_AUTH=neo4j/password \
neo4j
```
导入完成后,可以使用 `LOAD CSV` 命令加载数据,路径为 `file:///your_file.csv`,其中文件位于 `$HOME/workspace/neo4j/import` 目录下 [^4]。
---
阅读全文
相关推荐



















