(知识图谱学习1)neo4j基础

目录

一、neo4j安装与环境配置

官网:https://neo4j.com/download-center/

下载社区版neo4j服务

neo4j环境变量配置

jdk下载

jdk版本:

启动neo4j

二、cypher语句基本增删改查

删除

三、Py2neo连接neo4j

安装pip install py2neo

连接neo4j

建立节点

建立关系

匹配节点

匹配关系

删除节点

删除关系

删除关系链

修改属性


  • 一、neo4j安装与环境配置

参考博客:

Neo4j安装_王拾三的博客-CSDN博客_neo4j 社区版安装

  • 官网:https://neo4j.com/download-center/

  • 下载社区版neo4j服务

(知识图谱学习1)neo4j基础_第1张图片

  • neo4j环境变量配置

(知识图谱学习1)neo4j基础_第2张图片

右击—属性

(知识图谱学习1)neo4j基础_第3张图片

创建系统环境变量NEO4J_HOME,并把 安装目录 设置为变量值

path中添加%NEO4J_HOME%\bin

  • jdk下载

官网:https://www.oracle.com/java/technologies/downloads/#java11

  • jdk版本:

注意:neo4j-4.x和jdk11匹配.,neo4j-3.x需要jdk8匹配,新版本不用配置环境变量

cmd输入java -version检查是否安装完好

  • 启动neo4j

cmd输入neo4j console

(知识图谱学习1)neo4j基础_第4张图片

复制粘贴到浏览器打开,注意终端不能关闭

初始用户名和密码均为neo4j

连接成功后会设置新的密码,我设置的是123456

  • 二、cypher语句基本增删改查

增加一个节点

CREATE (a:`水浒传人物`{name:"宋江",绰号:"呼保义"})

增加一个关系:

CREATE (a:`水浒传人物`{name:'张衡'})-[b:兄弟]->(c:`水浒传人物`{name:'张顺'})

  • 删除

删除节点:

MATCH (a:`水浒传人物`{name:'宋江'}) DELETE a

删除关系:

MATCH (a:`水浒传人物`)-[b:`兄弟`]->(c:`水浒传人物`) DELETE b

   删除所有节点:
MATCH a DELETE a

注意:有关系的节点必须要先删除关系

增加标签:
MATCH (n:`水浒传人物`{name:'宋江'}) set n:

增加和修改属性:
MATCH (a:`水浒传人物`) WHERE id(a) =172 set a.`绰号`='浪里白条' return a

MATCH (n:`水浒传人物`)-[:`兄弟`]->(p:`水浒传人物`) return n,p

  • 三、Py2neo连接neo4j

  • 安装pip install py2neo

  • 连接neo4j

from py2neo import Node,Relationship,Graph,NodeMatcher

graph=Graph('http://localhost:7474/',auth=('neo4j',"123456"))

  • 建立节点

from py2neo import Node,Relationship,Graph,NodeMatcher
a=Node('水浒传主要人物',name='宋江',绰号='呼保义',星座='天魁星')

graph.create(a)

  • 建立关系

from py2neo import Node,Relationship,Graph,NodeMatcher
ab=Relationship(a,'兄弟',b)

graph.create(ab)

  • 匹配节点

from py2neo import Node,Relationship,Graph,NodeMatcher
Matcher=NodeMatcher(graph)

a=Matcher.match('水浒传主要人物',name='宋 江').first()

print(a['绰号'])

  • 匹配关系

from py2neo import Node,Relationship,Graph,NodeMatcher,RelationshipMatcher
r_matcher=RelationshipMatcher(graph)

relation=r_matcher.match(nodes=[a,b]).first()

print(relation)
 
  
  • 删除节点

c=Matcher.match('水浒传主要人物',name='宋江').first()

print(c['绰号'])

graph.delete(c)
 
  
  • 删除关系

r_matcher=RelationshipMatcher(graph)

relation=r_matcher.match(nodes=[a,b]).first()

print(relation)

graph.separate(relation)
  • 删除关系链

graph.delete(relation)
 
  
  • 修改属性

Matcher=NodeMatcher(graph)

a=Matcher.match('水浒传主要人物',name='宋江').first()

print(a['name'])

a['name']='宋老大'

graph.push(a)

你可能感兴趣的:(neo4j,知识图谱,学习)