Neo4j是一個高性能的NoSQL圖形數(shù)據(jù)庫,它具有成熟數(shù)據(jù)庫的所有特性
安裝Neo4j:首先,確保您已經(jīng)在您的計算機上安裝了Neo4j。如果沒有,請訪問https://neo4j.com/download/ 并根據(jù)您的操作系統(tǒng)下載相應(yīng)的安裝程序。
安裝Python驅(qū)動程序:要使用Python與Neo4j集成,您需要安裝一個名為py2neo
的Python庫。您可以使用以下命令安裝它:
pip install py2neo
py2neo
庫,然后使用您的數(shù)據(jù)庫URL、用戶名和密碼創(chuàng)建一個連接對象。例如:from py2neo import Graph, Node, Relationship
graph = Graph("bolt://localhost:7687", auth=("neo4j", "your_password"))
如果您使用的是本地數(shù)據(jù)庫,可以省略URL中的主機名和端口:
graph = Graph("bolt://localhost", auth=("neo4j", "your_password"))
py2neo
庫,您可以在Neo4j數(shù)據(jù)庫中創(chuàng)建節(jié)點和關(guān)系。例如,以下代碼創(chuàng)建了一個名為"Person"的節(jié)點,并添加了一個名為"KNOWS"的關(guān)系,將兩個節(jié)點連接起來:person1 = Node("Person", name="Alice")
person2 = Node("Person", name="Bob")
knows_relationship = Relationship(person1, "KNOWS", person2)
graph.create(person1, person2, knows_relationship)
cypher
查詢語言查詢Neo4j數(shù)據(jù)庫。例如,以下代碼查找所有與Alice有"KNOWS"關(guān)系的節(jié)點:result = graph.run("MATCH (a:Person)-[:KNOWS]->(b:Person) WHERE a.name = 'Alice' RETURN b")
for record in result:
print(record["b"]["name"])
py2neo
庫更新和刪除Neo4j數(shù)據(jù)庫中的數(shù)據(jù)。例如,以下代碼將Alice的名字更改為"Alicia":graph.run("MATCH (p:Person) WHERE p.name = 'Alice' SET p.name = 'Alicia'")
要刪除一個節(jié)點及其關(guān)系,您可以使用DELETE
語句:
graph.run("MATCH (n) DETACH DELETE n")
這只是與Neo4j集成的基本操作。py2neo
庫還提供了許多其他功能,如事務(wù)管理、索引和原生ID操作等。您可以查閱官方文檔(https://py2neo.org/ )以獲取更多信息。