从官方API Documentation搬运、翻译了一些最常用的内容
原文连接:API Documentation — Neo4j Python Driver 5.9
-------------------------------------------------以下开始--------------------------------------------------------------------
目录
查询数据库(driver.execute_query):
Cypher clause:
常用方法(都是driver.调用):
driver.execute_query(query, paras, database):
session(**config):
close():关闭池中所有连接
verify_connectivity(**config):验证驱动是否可以建立到server的连接
get_server_info(**config):获取关于连接到的Neo4j server的相关信息
verify_authentication(auth=None, **config):检查认证信息是否合法。
supports_session_auth():检查远程服务器是否支持连接重认证。
连接数据库(driver = GraphDatabse.driver(URI, AUTH)):
from neo4j import GraphDatabase
# URI examples: "neo4j://localhost", "neo4j+s://xxx.databases.neo4j.io"
URI = ""
AUTH = ("", "")
with GraphDatabase.driver(URI, auth=AUTH) as driver:
driver.verify_connectivity()
Driver对象仅在首次执行Cypher时才创建连接+池化,若要手动检测是否连接,使用verify_connectivity()
Driver.execute_query() # 执行查询
summary = driver.execute_query(
"MERGE (:Person {name: $name})", # 1.Cypher语句
name="Alice", # 2.查询参数
database_="neo4j", # 3.指定在哪个库执行
).summary # summary对象返回Cypher执行的相关信息
print("Created {nodes_created} nodes in {time} ms.".format(
nodes_created=summary.counters.nodes_created, # 创建节点数目
time=summary.result_available_after # 创建节点花费时间
))
Note:CREATE是新增、MERGE是匹配现有的;MERGE可以匹配现有的。
尝试建立连接并交换一些数据,以此来获取返回信息。若此方法引发异常,仍需要close()关闭驱动、释放资源。
类似于verify_connectivity(),但是为了检验authentication的。