# Object-Graph Mapping将图数据库中的节点映射为python对象,通过对象的方式对节点进行访问和操作。# 将图中的每种标签定义为一个python类,其继承自GraphObject,注意使用前先import。# 在定义时可以指定数据类的主键,并定义类的属性Property()、标签Label()、关系RelatedTo()/RelatedFrom。from py2neo.ogm import GraphObject, Property, RelatedTo, RelatedFrom, Labelclass Person(GraphObject):# 定义主键__primarykey__ = 'name'# 定义类的属性name=Property()age=Property()# 定义类的标签student=Label()# 定义Person指向的关系knows=RelatedTo('Person','KNOWS')# 定义指向Person的关系known=RelatedFrom('Person','KNOWN')# 通过类方法wrap()可以将一个普通节点转化为类的对象# 例如:将节点c转化为OGM类型c=Person.wrap(c)print(c.name)# 查找Person类中主键(name)为Alice的节点ali=Person.match(graph,'Alice').first()# 获取所有name以B开头的Person对象Person.match(graph).where("_.name =~ 'B.*'")# 创建一个新的Person对象并对其属性赋值new_person = Person()new_person.name = 'Durant'new_person.age = 28# 标签值默认为Falseprint(new_person.student)# 修改bool值为True,为对象添加student标签new_person.student=True# 更新图中ali节点的相关数据(把节点里面的数据,写入数据库)graph.push(ali)# 用图中的信息来更新ali节点(数据库里面的数据,覆盖图里数据)graph.pull(ali)# 删除图中的ali对象节点(删除数据库中的节点)graph.delete(ali)# 新建一个从ali指向new_person的关系ali.knows.add(new_person)# 清除ali节点所有的know关系ali.knows.clear()# 清除ali节点指向new_person的那个know关系ali.knows.remove(new_person)# 更新ali指向new_person关系的属性值ali.knows.update(new_person,year=5)# 获取ali指向new_person关系的属性year的值ali.knows.get(new_person,'year')

Neo4j图数据库,用py2neo中的OGM操作(类似ORM)相关推荐

  1. 图数据库(二):Java操作图数据库

    在上篇文章中,我们介绍了什么是Neo4j,什么是Cypher以及Neo4j的使用,今天我们学习一下如何使用Java操作Neo4j图数据库. Cypher查询 在使用Java操作Neo4j之前,我们先了 ...

  2. neo4j 图数据库初步调研 图数据库与关系型数据库差异-f

    相关文章 neo4j 图数据库初步调研 三元组.属性图.图模型.超图.RDF demo项目(python+vue) 本文目录 相关文章 一.技术关键字 二.前言 三.图数据库与传统数据库 1.反规范化 ...

  3. Neo4j图数据库 批量写入与查询

    1 前言 1-1 简介 工作中需要对所有的实体数据进行存储构建实体知识图谱,为基于知识图谱的问答提供数据基础.选择使用Neo4j作为数据库进行存储.以下是关于Neo4j的简介. 1-2 任务背景 将处 ...

  4. Neo4j图数据库从入门到精通

    add by zhj: 转载时,目录没整理好,还会跳转到原文 其实RDB也可以存储多对多的关系,使用的是中间表,GDB使用的是边,RDB中的实体存储在数据表,而GDB存储在节点.两者使用的底层技术不同 ...

  5. Task 5 Cypher 介绍及Neo4j 图数据库查询

    Datawhale 知识图谱组队学习 Task 5 Neo4j 图数据库查询 一. Neo4介绍 二. Neo4j 介绍 3.1 Cypher 介绍 3.2 Neo4j 图数据库 查询 四. 基于知识 ...

  6. Pyhton操作Neo4j图数据库实践(南北朝隋唐历史北朝主要人物知识图谱)

    独孤信"第一岳父"之称很形象,他有三个女儿做了三个朝代皇后,以及杨坚.杨广.李渊等人关系.本文试着使用图数据库(neo4j)表达这段南北朝隋唐历史北朝主要人物知识图谱. 1. Ne ...

  7. Neo4j图数据库学习笔记

    Neo4j图数据库 数据库安装 下载安装包 https://neo4j.com/artifact.php?name=neo4j-community-4.1.1-windows.zip 解压 bin:数 ...

  8. Ubuntu14.04下Neo4j图数据库官网安装部署步骤(图文详解)(博主推荐)

    不多说,直接上干货! 说在前面的话  首先,查看下你的操作系统的版本. root@zhouls-virtual-machine:~# cat /etc/issue Ubuntu 14.04.4 LTS ...

  9. neo4j——图数据库初探 - JDream314的专栏 - 博客频道 - CSDN.NET

    neo4j--图数据库初探 - JDream314的专栏 - 博客频道 - CSDN.NET 图数据库neo4j初探(下载地址:http://neo4j.org/ ) 本篇将初步介绍一下图数据库neo ...

最新文章

  1. tensorflow inceptionv3参数笔记
  2. 什么才是多线程安全的
  3. Linux下命令行安装weblogic10.3.6
  4. 【Redis】新浪微博与微信Redis架构实战 - 笔记
  5. 美团将主办 ICDAR2019「中文门脸招牌文字识别」比赛,并公开首个真实场景招牌图像数据集...
  6. android service 访问数据库,XE5 ANDROID通过webservice访问操作MSSQL数据库
  7. 设计一个RC高通滤波器或低通滤波器
  8. 硬盘性能测试DD命令详解
  9. ABAP 日期格式转换(将XXXX-XX-XX或XXXX/XX/XX或XXXX.XX.XX转换XXXXXXXX格式)
  10. 蘑菇街顶天:真诚与尊重是技术团队的管理要点
  11. 景区厕所污水处理有哪些问题?
  12. 微信公众号给微信用户推送信息 模板信息
  13. 实验二+070+胡阳洋
  14. 案例总结:京东图书信息爬取
  15. 角度转度分秒lisp函数_自改小程序,提示错误,运行另一个lisp后就不会出错,求帮忙!...
  16. Jetpack Compose中的手势操作
  17. 全局变量的优缺点及为什么要少用全局变量
  18. 各类指数数据(商品价格指数、消费者价格指数和企业景气及信心指数)
  19. CPBL的选秀会有哪些规定和流程·棒球8号位
  20. 高职计算机网络基础教学环节,计算机网络基础课程教学改革研究

热门文章

  1. SQL server 复杂查询
  2. 差钱吗?周杰伦线上演唱会没关打赏惹争议,看看同时直播的腾格尔
  3. 怎么对比两个mysql数据库_[实战]如何对比两个数据库之间的变化
  4. 为什么说 HashMap 是无序的
  5. java 无序_java – 为什么ArrayList给出无序输出?
  6. 电脑组成部件介绍图解:电脑的硬件组成部分及其作用各是什么?
  7. Effie:陪你守候那些观影岁月
  8. 集成电路设计学习笔记(二)基于IC617反相器设计之原理图绘制
  9. excel表格末尾添加一行_#天职经验谈# WORD表格技巧之 定位与公式
  10. [Pytorch框架] 5.2 Pytorch处理结构化数据