Neo4j:图数据库GraphDB(四)Python中的操作

时间:2023-03-09 03:46:50
Neo4j:图数据库GraphDB(四)Python中的操作

  本文总结下Python中如何操作Neo4j数据库,用到py2neo包,Pip install 一下。

1 连接neo4j数据库:跟其它数据库一样,操作前必须输入用户名和密码及地址连接一下。

from py2neo import Graph
graph = Graph("http://localhost:7474", username="neo4j", password="")

2 清空数据库:删除图数据库里的一切点和边。

graph.delete_all()

3 创建结点:label标记一簇结点,方便以后的结点查找操作,{}里是json字符串格式的属性对配置。

temp_node = Node(label, name=“张三”)
graph.create(temp_node)

4 创建边:必须先定位两个结点,才可以创建边,边不能脱离两个结点孤立存在;json关系边的配置属性,边的type类型是Owner,作用同结点的label。

class Owner(Relationship): pass
def add_transfer(company, human): humanNode = graph.find_one("Human", "name", human)
if humanNode==None:
print human
return companyNode = graph.find_one("Company", "name", company)
if companyNode==None:
print company
return rel = Owner(humanNode,companyNode)
rel['relation'] = "随便写"
graph.create(rel)

思考:若两个结点具有相同的type类型,不同的属性,这样的两个结点是否可以存在多条方向一样的边呢?