Neo4j图数据库

了解图数据库Neo4j

什么是Neo4j

neo4j 数据库是一个高性能的 NoSQL 图形数据库。它的存储结构非常类似于数学中的图,以结点结点之间的关系为存储的基本内容。
neo4j 中的图指的是有向图,所有的关系都必须是有方向的,如果试图创建没有方向的关系会失败。
非常适合存储关系错综复杂的数据,如知识图谱、人脉网等。neo4j 中没有分库分表的概念,所有结点和关系都存在一个库中。由于没有表结构,因此它非常适合存储半结构化数据,扩展性极好。

在这里插入图片描述
Neo4j用的人最多,模板好找,报错能查。。。。

安装配置Neo4j

JDK安装

  • Neo4j不支持低版本的JDK所以需要重新下载高版本的(如果jdk版本高可忽略)

  • JDK安装:https://www.oracle.com/java/technologies/javase-downloads.html

  • 本人安装的是jdk15.0.1
    在这里插入图片描述

  • 是否安装成功了:java -version

Neo4j安装

  • Neo4j安装:https://neo4j.com/download-center/
  • Neo4j环境变量的配置
    在这里插入图片描述

  • 启动: neo4j.bat console
    在这里插入图片描述
    在这里插入图片描述
    可以玩玩图数据库的例子:
    在这里插入图片描述

掌握操作Neo4j数据库的基本语句

  • Cypher语法
  • https://www.w3cschool.cn/neo4j/ 这个教程不错。

  • 增加一个节点
    • CREATE(n:Person{name:'yl',age:21})
    • CREATE(n:Person{name:'ss',age:21,weight:160})
  • 增加带有关系属性的节点
    • CREATE(p:Person{name:'kristen',sex:'woman'})-[:写作业{project:'C++'}]->(n:Person{name:'luer',sex:'woman'})
    • 双向关系
CREATE (romeo:Person{name: "Romeo"})-[:LOVES]->(juliet:Person{name:"Juliet"})
CREATE (juliet)-[:LOVES]->(romeo)

  • 删除节点
    • MATCH(person:Person{name:'yl'}) DELETE person
    • MATCH(p:Person) DETACH DELETE p;
    • 如果这个节点关联的有关系则不能删除
  • 删除关系
	 MATCH (p1:Person)-[r:LOVES]-(p2:Person) 
	 DELETE p1,p2,r
  • 删除属性
    • MATCH(h:Person{name:'ss'}) REMOVE h.weight

  • 增加标签
    • MATCH(t:Person) WHERE id(t) = 2 set t:好人 RETURN t
  • 增加属性
    • MATCH(a:好人) WHERE id(a) = 2 set a.战斗力 = 500 RETURN a
  • 修改属性
    • MATCH(a:好人) WHERE id(a) = 2 set a.战斗力 = 1000 RETURN a

  • MATCH(h:Person)-[:写作业]->(t:Person) RETURN h,t
  • 查的操作很多,可以参考Neo4j的例子。

快速清空数据库

MATCH(n) 
DETACH DELETE n
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值