Python操作neo4j库py2neo使用之py2neo 删除及事务相关操作(三)

Python操作neo4j库py2neo使用之py2neo 删除及事务相关操作(三)

py2neo 删除

1、连接数据库

python 复制代码
from py2neo import Graph
graph = Graph("bolt://xx.xx.xx.xx:7687", auth=(user, pwd), name='neo4j')

2、删除节点

python 复制代码
# 删除单个节点
node = graph.nodes.match(label='公司',name='XX公司').first()
graph.delete(node)
 
# 删除多个节点
nodes = graph.nodes.match(label='公司',name='XX公司').all()
for node in nodes:
    graph.delete(node)

3、删除关系

python 复制代码
relationship = graph.relationships.match(r_type='投资').first()
graph.delete(relationship)
 
relationships = graph.relationships.match(r_type='投资').all()
for relationship in relationships:
    graph.delete(relationship)

4、 删除所有的数据和节点

python 复制代码
graph.delete_all()

5、删除数据库

python 复制代码
from py2neo.database import SystemGraph
system = SystemGraph("bolt://xx.xx.xx.xx:7687", auth=(user, pwd))
system.run(f'drop database {graph_name}')

py2neo 事务

python 复制代码
from py2neo import Graph, Node, Relationship
from py2neo.database import Transaction
graph = Graph("bolt://xx.xx.xx.xx:7687", auth=(user, pwd), name='neo4j')
 
# 创建事务
tn:Transaction = self.graph.begin()
# 创建节点
node1 = Node(label='公司', name='百度')
node2 = Node(label='公司', name='爱奇艺')
tn.create(node1)
tn.create(node2)
tn.graph.commit()
 
# 创建关系
relationship = Relationship(node1,"投资",node2,**{'金额':100000})
tn.create(relationship)
 
# 提交
tn.graph.commit()
 
# 合并节点
tn.merge()
 
# 删除节点、关系
tn.delete()
 
# 回滚
tn.graph.rollback()

py2neo 其他操作

1、执行原生cyther语句

python 复制代码
from py2neo import Graph
graph = Graph("bolt://100.100.20.55:7687", auth=(user, pwd), name='neo4j')
 
# 获取label为公司,名称为XX公司的节点
graph.run("Match (n:`公司`) where n.name=`XX公司` return n")
相关推荐
荣码7 小时前
LangGraph多Agent协作:3个Agent干活比1个强,但我踩了4个坑
java·python
用户8356290780511 天前
Python 操作 PDF 附件:添加、查看与管理指南
后端·python
宇宙之一粟1 天前
乐企版式文件生成平台
java·后端·python
学测绘的小杨2 天前
CompassFusion:一个从 GNSS 到 GNSS/INS 组合导航的独立工程包
python
zzzzzz3102 天前
当产品经理说这个很简单:我用Python自动化处理奇葩需求的实战指南
python·pycharm·产品经理
雪隐2 天前
个人电脑玩AI-06让5060 Ti给你打工——不光能画画,Qwen3-TTS还能学人说话,连我老板都信了!
人工智能·后端·python
兵慌码乱3 天前
面向桌面端的资产管理系统分层架构设计与核心模块实现
python·系统架构·sqlite·pyqt5·数据库设计·桌面应用开发·mvc架构
hboot3 天前
AI工程师第三课 - 机器学习基础
python·scikit-learn·kaggle
顾林海3 天前
Agent入门阶段-编程基础-Python:流程控制
python·agent·ai编程
呱呱复呱呱3 天前
Django CBV 源码解读:一个请求是怎么找到你的 get() 方法的
python·django