当前位置: 首页 > news >正文

neo4j vs python

1.将库中已经存在的两个节点,创建关系。

查询库中只有2个独立的节点。

方式一,python,使用py2neo库

#coding:utf-8
from py2neo import Graph,Node,Relationship,NodeMatcher##连接neo4j数据库,输入地址、用户名、密码
graph = Graph('bolt://xx.xx.xx.xx:7687',auth=("neo4j","neo4j1234"))hd = graph.nodes.match("person",name="宋太祖").first()
hh = graph.nodes.match("person",name="皇后").first()graph.create(Relationship(hd,"夫妻",hh))

执行成功

查看库

方式二:使用neo4j, 原生cypher语句

#coding:utf-8
from neo4j import GraphDatabase##获取已经存在的节点,创建关系
driver = GraphDatabase.driver('bolt://xx.xx.xx.xx:7687',auth=("neo4j","neo4j1234"))with driver.session() as session:hd = session.run("MATCH (a:person {name:'宋太祖'}) return a").single().get("a")hh = session.run("MATCH (b:person {name:'皇后'}) RETURN b").single().get("b")session.run("Match (a:person), (b:person) where a.name='皇后' and b.name='宋太祖' create (a) - [:老婆] -> (b)")
driver.close()

查看库

看着上面的脚本就奇怪,那获取节点干嘛呢,信息存入了变量里,后面又没用到这个变量。

直接用最后面的cypher语句,不就能执行了嘛。执行一次,没报错,查看库

果然不需要那两句,直接match查询就可以。

总结

通过这两个方式也看出来了,还是用封装好的方法操作便捷,出错的概率也小。

 

http://www.dtcms.com/a/163795.html

相关文章:

  • 小刚说C语言刷题——1032分糖果
  • 【今日三题】小红的ABC(找规律) / 不相邻取数(多状态dp) / 空调遥控(排序+二分/滑动窗口)
  • PLOT: PROMPT LEARNING WITH OPTIMAL TRANSPORT FOR VISION -LANGUAGE MODELS
  • Kafka 的服务端的物理存储架构是什么?零拷贝,mmap,sendfile、DMA gather又是什么?
  • Go语言中的错误处理
  • ETL数据集成与数据资产的紧密关联,解锁数据价值新密码
  • 阿里云服务迁移实战: 04-IP 迁移
  • 阿里云 OpenManus 实战:高效AI协作体系
  • 数据中心网络架构:高效规划与自动化设计实践
  • python的turtle库实现四叶草
  • 缺口拼图,非线性坐标关联
  • Tomcat 部署配置指南
  • Flume启动报错
  • 人工智能数学基础(四):线性代数
  • Plesk 下的 IP 地址管理
  • QT中的网络编程
  • [零基础]内网ubuntu映射到云服务器上,http访问(frp内网穿透)
  • FastDDS 解析xml文件
  • neo4j暴露公网ip接口——给大模型联通知识图谱
  • 【uom】 0 配置文件(Cargo.toml)
  • 【DB2】逻辑导出导入注意事项
  • mongoose的介绍,连接数据库
  • 引力透镜效应添加光线弯曲程度可视化层的MATLAB代码
  • Neo4j 的 `SET n += $properties` 语法详解
  • 2025年04月29日Github流行趋势
  • OpenCV 图形API(72)图像与通道拼接函数-----根据指定的方式翻转图像(GMat)函数 flip()
  • zynq上的裸机lwip网络性能测试iperf使用心得
  • UI-TARS论文解读 并提供镜像
  • Elasticsearch:ES|QL lookup JOIN 介绍 - 8.18/9.0
  • 水污染检测数据集VOC+YOLO格式2487张4类别