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

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

py2neo 删除

1、连接数据库

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

2、删除节点

# 删除单个节点
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、删除关系

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、 删除所有的数据和节点

graph.delete_all()

5、删除数据库

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

py2neo 事务

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语句

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")

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/921643.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

gpt2的学习

现在学习下gpt2模型做摘要,我们都知道gpt2 是纯decoder,做摘要说话的效果较好。 把数据拆分 按照这个进行tokenizer 用这个tokenizer BertTokenizer.from_pretrained(‘bert-base-chinese’) 2w多词汇表 用交叉熵做lossf, 设好一些简单的…

网络安全设备

防火墙 防火墙是管理和控制网络流量的重要工具,防火墙适用于过滤流量的网络设备。防火墙根据一组定义的规则过滤流量。 静态数据包过滤防火墙 静态数据包过滤防火墙通过检查消息头中的数据来过滤流量。通常,规则涉及源、目标和端口号。静态数据包过滤防…

Python爬虫:深入探索1688关键词接口获取之道

在数字化经济的浪潮中,数据的价值愈发凸显,尤其是在电商领域。对于电商平台而言,关键词不仅是搜索流量的入口,也是洞察市场趋势、优化营销策略的重要工具。1688作为中国领先的B2B电商平台,其关键词接口的获取对于商家来…

SpringCloud Gateway转发请求到同一个服务的不同端口

SpringCloud Gateway默认不支持将请求路由到一个服务的多个端口 本文将结合Gateway的处理流程,提供一些解决思路 需求背景 公司有一个IM项目,对外暴露了两个端口8081和8082,8081是springboot启动使用的端口,对外提供一些http接口…

全面监测Exchange邮件服务器的关键指标

在当今高度信息化的社会,Exchange邮件服务器已成为企业日常通信的重要组成部分。为了确保邮件服务器的稳定运行,及时发现潜在问题并采取相应的解决措施显得尤为重要。监控易作为一款专业的监控工具,为Exchange邮件服务器提供了全方位的监测功…

实用功能,觊觎(Edge)浏览器的内置截(长)图功能

Edge浏览器内置截图功能 近年来,Edge浏览器不断更新和完善,也提供了长截图功能。在Edge中,只需点击右上角的“...”,然后选择“网页捕获”->“捕获整页”,即可实现长截图。这一功能的简单易用,使其成为…

IDEA2023版本配置项目全局编码

IDEA默认的项目编码是UTF-8,有时候拿到别人的代码使用的编码是GBK,虽然可以在idea右下角进行修改,但是一个一个的修改太慢了。所以需要去进行该项目的编码全局配置。接下来直接讲步骤,以IDEA2023版本为例。 第一步 File>Sett…

【Spiffo】环境配置:VScode+Windows开发环境

摘要: 在Linux下直接开发有时候不习惯快捷键和操作逻辑,用Windows的话其插件和工具都更齐全、方便,所以配置一个Windows的开发环境能一定程度提升效率。 思路: 自己本地网络内远程连接自己的虚拟机(假定用的是虚拟机…

计算机网络 实验六 组网实验

一、实验目的 通过构造不同的网络拓扑结构图并进行验证,理解分组转发、网络通信及路由选择的原理,理解交换机和路由器在子网划分中的不同作用。 二、实验原理 组网实验是指将多个计算机通过网络连接起来,实现数据的共享和通信。 组网需要考虑…

springboot vue工资管理系统源码和答辩PPT论文

人类现已迈入二十一世纪,科学技术日新月异,经济、资讯等各方面都有了非常大的进步,尤其是资讯与网络技术的飞速发展,对政治、经济、军事、文化等各方面都有了极大的影响。 利用电脑网络的这些便利,发展一套工资管理系统…

【PPTist】添加PPT模版

前言:这篇文章来探索一下如何应用其他的PPT模版,给一个下拉菜单,列出几个项目中内置的模版 PPT模版数据 (一)增加菜单项 首先在下面这个菜单中增加一个“切换模版”的菜单项,点击之后在弹出框中显示所有的…

输入/输出管理 III(磁盘和固态硬盘)

一、磁盘 【总结】: 磁盘(Disk)是由表面涂有磁性物质的物理盘片,通过一个称为磁头的导体线圈从磁盘存取数据。在读/写操作期间,磁头固定,磁盘在下面高速旋转。如下图所示: 磁盘盘面…

链表算法速成计划

链表算法速成计划 1.准备工作 1.1创建链表节点结构体 struct ListNode {int val;ListNode* next;ListNode() : val(0), next(NULL) {}ListNode(int x) : val(x), next(NULL) {}ListNode(int x, ListNode* next) : val(x), next(next) {} };1.2 在IDE中创建链表代码 ListNod…

iPhone或iPad接收的文件怎么找?怎样删除?

因为iOS系统和iPadOS系统的特殊性,在使用AirDroid传输文件之后,往往存在“找文件”的难题。本篇文章一次性解释清楚。 文件传输到iPhone/iPad之后,怎样才能找到? iPhone/iPad接收到的全部文件都可以在AirDroid右上角的【时钟】按钮…

猎板 HDI 多阶工艺:高密度互连的核心技术

一、猎板HDI引言 随着电子设备不断向小型化、高性能化和多功能化发展,PCB(印刷电路板)的设计与制造面临着前所未有的挑战。HDI(高密度互连)技术应运而生,而其中的多阶工艺更是满足了对更高布线密度、更小尺…

VUE 的前置知识

一、JavaScript----导图导出 1. JS 提供的导入导出机制&#xff0c;可以实现按需导入 1.1 在html页面中可以把JS文件通过 <script src"showMessage.js"></script> 全部导入 1.2 通过在JS文件中写export关键字导出通过 <script src"showMessage…

---Arrays类

一 java 1.Arrays类 1.1 toString&#xff08;&#xff09; 1.2 arrays.sort( )-----sort排序 1&#xff09;直接调用sort&#xff08;&#xff09; Arrays.sort() 方法的默认排序顺序是 从小到大&#xff08;升序&#xff09;。 2&#xff09;定制排序【具体使用时 调整正负…

【H2O2|全栈】JS进阶知识(六)ES6(2)

目录 前言 开篇语 准备工作 Set和Map 基本概念 Set 相互转化 常见属性和API 数组去重 并集、交集和差集 Map 转化 常见的属性和API Set和Map的区别 This的指向 function函数 箭头函数 修改this 使用方式 三种方式的异同 案例 更改this指向为obj 求数组数…

Node基本使用

1. 创建自定义全局指令 1.1 新建一个空的文件夹, 创建一个cli.js文件 1.2 在cli.js写入内容 /usr/bin/env就是让系统使用node来执行你的脚本文件。 #! /usr/bin/env node1.3 执行终端指令 // 在文件夹 node-project 的终端下执行指令npm init执行完后package.json结构如下,…

Python编程技巧:多变量赋值的优雅艺术

在Python编程的世界里&#xff0c;有许多令人惊叹的语法特性&#xff0c;而多变量赋值就像是一颗闪耀的明珠&#xff0c;它不仅让代码更优雅&#xff0c;还能提升程序的执行效率。今天我们就深入探讨这个看似简单却蕴含深意的编程技巧。 基础认识 传统的变量赋值方式&#xff…