Python 驱动程序

本节介绍 Neo4j 1.7 Python 驱动程序和 4.x Python 驱动程序之间的重大变更。

Neo4j Python 驱动程序的最新版本可在Python 驱动程序官方页面上找到。

1.7 变更 4.x

max_retry_time

配置名称变更

max_transaction_retry_time

access_mode

配置名称变更,现在是关键字参数

default_access_mode

neo4j.exceptions.CypherError

异常名称变更

neo4j.exceptions.Neo4jError

neo4j.exceptions.ConnectionExpired

异常已移除

-

transaction.success

标志已移除

-

Result.value(item=0, default=None)

neo4j.Record. 助手函数参数名称从 `item` 变更为 `key`。

Result.value(key=0, default=None)

Result.values(*items)

neo4j.Record 助手函数参数名称从 items 变更为 keys

Result.values(*keys)

Result.data(*items)

neo4j.Record 助手函数参数名称从 items 变更为 keys

Result.data(*keys)

neobolt

不再是依赖项

-

neotime

不再是依赖项

-

现在是依赖项

pytz

Transaction.sync()

已移除

如果行为是耗尽结果对象,请使用 Result.consume()

Transaction.success

已移除

-

Transaction.close()

行为变更,仅在未执行提交的情况下执行回滚。

Transaction.close()

Session.sync()`

已移除

如果行为是耗尽结果对象,请使用 Result.consume()

Session.detach()

已移除

如果行为是耗尽结果对象,请使用 Result.consume()

Session.next_bookmarks()

已移除

-

Session.has_transaction()

已移除

-

Session.closed()

已移除

-

示例 1. 1.7 Python 驱动程序和 4.0 Python 驱动程序之间的变更示例
4.0 Python 驱动程序的示例代码 1.7 Python 驱动程序的示例代码
driver = GraphDatabase.driver(
    uri, auth=(user, password),
    max_transaction_retry_time=120
)
def create_and_return_greeting(tx,
                               message):
    result = tx.run(
        "CREATE (a:Greeting) "
        "SET a.message = $message "
        "RETURN a.message + "
        "', from node ' + id(a)",
        message=message
    )
    return result.single()[0]
with driver.session() as session:
    greeting = session.write_transaction(
        create_and_return_greeting,
        "Hello World"
    )
    print(greeting)
driver = GraphDatabase.driver(
    uri, auth=(user, password),
    max_retry_time=120
)
def create_and_return_greeting(tx,
                               message):
    result = tx.run(
        "CREATE (a:Greeting) "
        "SET a.message = $message "
        "RETURN a.message + "
        "', from node ' + id(a)",
        message=message
    )
    return result.single()[0]
with driver.session() as session:
    greeting = session.write_transaction(
        create_and_return_greeting,
        "Hello World"
    )
    print(greeting)
© . All rights reserved.