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

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.xdnf.cn/news/2947.html

相关文章:

  • Canal使用
  • 巧记英语四级单词 Unit7-上【晓艳老师版】
  • 【应用密码学】实验三 流密码(ZUC)
  • 智能电子白板的设计与实现:从硬件选型到软件编程
  • 【ArcGIS微课1000例】0143:什么是ovkml,如何转换为kml与shp?
  • 使用 OpenCV 实现图像中心旋转
  • SpringBoot获取用户信息常见问题(密码屏蔽、驼峰命名和下划线命名的自动转换)
  • Spring Cloud 项目中优雅地传递用户信息:基于 Gateway + ThreadLocal 的用户上下文方案
  • 破解工业协议孤岛:迈威MaxGate系列工业智能网关覆盖全场景需求
  • docker-vllm运行大模型
  • KUKA机器人快速启动设置
  • python:sklearn 主成分分析(PCA)
  • 本地大模型编程实战(28)查询图数据库NEO4J(1)
  • 四.割草机技术总结--4.基站发送给流动站的差分数据传输标准RTCM
  • ShenNiusModularity项目源码学习(25:ShenNius.Admin.Mvc项目分析-10)
  • pytest-前后置及fixture运用
  • GrapesJS 终极定制组件设计方案:扁平化对象属性编辑、多区域拖拽、多层嵌套与组件扩展实战
  • CentosLinux系统crontab发现执行删除命令失效解决方法
  • C语言(5)—函数
  • 计算机毕业设计--基于深度学习(U-Net与多尺度ViT)的车牌模糊图像修复算法设计与实现(含Github代码+Web端在线体验界面)
  • 大模型在肾癌诊疗全流程中的应用研究报告
  • transformer-实现单层Decoder 层
  • iOS签名的包支持推送功能吗?
  • Windows 桌面个性高效组件工具
  • 常用回环检测算法对比(SLAM)
  • 当向量数据库与云计算相遇:AI应用全面提速
  • 逆传播AIGEO营销:破局生成式搜索时代,让AI成为品牌代言人!
  • Go语言中的 `time.Tick` 函数详解
  • Qwen3简介:大型语言模型的革命
  • 数据库中常用的窗口函数