neo4j图数据库基本操作

导入方式:

  1. 首先通过一个csv文件,该文件存储所有的实体,导入该文件
  2. 然后通过另一个csv(建立了关系的文件),匹配刚才的所有实体,可以导入关系进去,存在问题,可能有一些实体没有关系。
  3. 导入对实体解释的文本
  4. 导入文本与实体关系的文件

创建节点

property keys:节点信息(采用字典的格式):包括name、skill、master等等信息,这些key最后会作为property(属性)出现在property keys的内容中。
create (n:华山{name:“令狐冲”, skill:“易筋经”, master:“岳不群”})

解释:标签为华山,实体名为令狐冲

删除

清空数据库

如何删除Neo4j中未连接的节点属性?
neo4j清空所有数据命令如下[但会有Property Keys残留]:

MATCH (n)OPTIONAL MATCH (n)-[r]-()DELETE n,r

删除属性

我可以一次删除一个属性,像下面这样:

MATCH (n:Node)REMOVE n.pagerank

删除节点:

(必须确保关系被删除,才能删除节点)

MATCH (n:华山) DELETE n;

精确删除标签:

MATCH (n:华山{skill:'易筋经'}) DELETE n;

删除关系:

MATCH p=()-[r:RELATION]->() delete p

查询

精确查询:

MATCH (n:Baike{title:'傣族文化'}) RETURN n 查询所有的关系:
MATCH p=()-->() RETURN p LIMIT 25

精确查询:

MATCH p=({title:'中国'})-->({title:'印度'}) RETURN p

查询节点个数

MATCH (n:Baike) RETURN count(*)

导入

节点导入:

(格式
title
傣族
傣族文化

LOAD CSV WITH HEADERS FROM "file:///BaiKe.csv" AS line
CREATE (:Baike { title: line.title })

中文乱码,CSV转为utf-8

建立唯一索引:

CREATE CONSTRAINT ON (c:Baike)
ASSERT c.title IS UNIQUE

导入关系:

LOAD CSV  WITH HEADERS FROM "file:///sub.csv" AS line
MATCH (entity1:Baike{title:line.Entity1}) , (entity2:Baike{title:line.Entity2})
CREATE (entity1)-[:RELATION { type: line.relation }]->(entity2)

导入文本:

LOAD CSV WITH HEADERS  FROM "file:///All_1.csv" AS line  
CREATE (p:BaikeItem{title:line.title,Content:line.Content,imageName:line.imageName,Image:line.Image})

导入文本关系:

LOAD CSV  WITH HEADERS FROM "file:/data//ReligionTitle.csv" AS line
MATCH (entity1:Baike{title:line.Entity1}) , (entity2:BaikeItem{title:line.Entity2})
CREATE (entity1)-[:RELATION { type: line.relation }]->(entity2)
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Neo4j是一种高性能的数据库,它以的形式存储和处理数据。以下是Neo4j数据库的基本概念和组件: 1. (Graph):Neo4j使用来表示数据模型,由节点(Nodes)和关系(Relationships)组成。节点表示实体,关系表示节点之间的连接。 2. 节点(Node):节点是中的基本单元,用于表示实体。每个节点可以有多个属性(Properties),属性用于描述节点的特征。 3. 关系(Relationship):关系用于连接节点,表示节点之间的关联关系。关系可以有方向和类型,并且可以具有属性。 4. 属性(Properties):属性是节点和关系的特征描述,以键值对的形式存储。属性可以用于存储节点和关系的各种信息。 5. 标签(Label):标签用于对节点进行分类和组织。一个节点可以有多个标签,标签可以用于快速检索和过滤节点。 6. 查询语言(Cypher):Cypher是Neo4j的查询语言,它类似于SQL,但专门用于数据库。通过Cypher语言,可以对数据库进行查询、插入、更新和删除操作。 7. 索引(Index):索引用于加速节点和关系的查找。Neo4j支持多种类型的索引,包括唯一索引、全文索引等。 8. 事务(Transaction):事务用于保证数据的一致性和完整性。在Neo4j中,可以通过事务来执行一系列的数据库操作,并确保这些操作要么全部成功,要么全部失败。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值