知识库

将时间对象作为参数传递

随着 Neo4j 对日期时间类型的支持,用户可能想知道如何或是否可以通过驱动程序传输这些类型以及其他数据类型。

使用我们的 Neo4j 驱动程序发送时间对象是可能且受支持的。我们将在此处展示如何操作。

驱动程序中传递对象

Neo4j 驱动程序导出了几乎所有支持的 Cypher 数据类型,包括时间类型。这意味着您可以在数据库和应用程序之间来回发送包含字符串、数字、日期/时间以及混合值类型的参数对象。

有关 Neo4j 驱动程序中支持的 Cypher 类型的完整列表,请查阅关于 Cypher 类型系统 的文档页面。

让我们看一个使用 JavaScript 驱动程序的示例。

const neo4j = require('neo4j-driver').v1

const myDate = new neo4j.types.Date(2000, 01, 01);

session.run('CREATE (p:Person {name: $name, born: $birthday})', {name: "Bob", birthday: myDate})

在上面的示例中,我们创建了一个日期类型的常量,并在变量定义中实例化了该值。我们的下一个语句运行一个 Cypher CREATE,并为 name 参数传入一个字符串值,为 birthday 参数传入我们的日期常量。我们的 Cypher 语句通过在参数名称前使用 $ 来引用参数。

这样就避免了在 Cypher 语句中使用 date() 函数将字符串值进行转换,如下面的示例所示。

CREATE (p:Person { name: 'Bob', birthday: date(2018,01,01) })

资源

有问题?欢迎在我们的 社区网站 上提出,将有专家为您解答!

© . All rights reserved.