neo4j导入csv数据

手动输入数据 - 官方demo

在这里插入图片描述

  • 点击之后,按照左边10张图中的代码,复制粘贴熟悉语法

在这里插入图片描述

  • 效果如下

在这里插入图片描述

csv数据导入

参考视频教程 《Neo4j图数据库csv格式文件数据导入》

视频中给出的参考文章 《csv文件导入Neo4j(包括结点和关系的导入)》

在这里插入图片描述

准备数据

三张表格,一张药物表,一张疾病表,一张关系表
在这里插入图片描述

数据处理

初始数据假设存储在 excel表格中
第一步另存为 csv 文件格式
第二步 txt 打开 csv
第三步 在txt中另存为 csv(这步主要是为了设置文本格式为 UTF-8)

然后把csv文件存储在 neo4j 安装目录的import文件夹中,可以neo4j restart重启一下。
V:\neo4j\neo4j-community-5.23.0-windows\neo4j-community-5.23.0\import
在这里插入图片描述

导入步骤

① 导入疾病表格

LOAD CSV WITH HEADERS FROM "file:///jibing.csv" AS line 
MERGE (p:jibing{jbid:line.jbid,jbmc:line.jbmc})

在这里插入图片描述

② 导入药物表格

LOAD CSV WITH HEADERS FROM "file:///yaowu.csv" AS line 
MERGE (p:yaowu{ywid:line.ywid,ywmc:line.ywmc})

添加成功:

在这里插入图片描述
查看效果:(多了药物节点)
在这里插入图片描述

③导入疾病-药物关系表格

LOAD CSV WITH HEADERS FROM "file:///guanxi.csv" AS line  
MATCH (from:yaowu{ywid:line.ywid}),(to:jibing{jbid:line.jbid})
MERGE (from)-[r:rel{gx:line.gx}]->(to)

添加关系成功:
在这里插入图片描述
查看关系图:
在这里插入图片描述

爬虫的csv文件

两个表,非常多数据。
没有关系表,自己选关键字创建关系
在这里插入图片描述

LOAD CSV WITH HEADERS FROM "file:///topRankCompanyPeople.csv" AS line 
MERGE (p:topRankCompanyPeople{CompanyName:line.CompanyName,Name:line.Name,Status:line.Status,ImageURL:line.ImageURL,CurrentCompany:line.CurrentCompany,JobTitle:line.JobTitle,XLink:line.XLink,LinkedInLink:line.LinkedInLink})

报错

Cannot merge the following node because of null property value for 'XLink': (:topRankCompanyPeople {XLink: null}) (Failure when processing file '///topRankCompanyPeople.csv' on line 5.)

在这里插入图片描述

去掉后面两个关键字就可以了

LOAD CSV WITH HEADERS FROM "file:///topRankCompanyPeople.csv" AS line 
MERGE (p:topRankCompanyPeople{CompanyName:line.CompanyName,Name:line.Name,Status:line.Status,ImageURL:line.ImageURL,CurrentCompany:line.CurrentCompany,JobTitle:line.JobTitle})

在这里插入图片描述

  • 通过两个表格的名字创建关联
MATCH (c:topRankCompanyPeople)-[:KNOWS]->(u:topRankUniversityPeople)
RETURN c.Name AS topRankCompanyPeople, u.Name AS topRankUniversityPeople;

在这里插入图片描述

### 方法一:使用 `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]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值