在Neo4j中自动生成id

Jee*_*ika 3 neo4j

Neo4j会为使用'CREATE'查询创建的所有节点自动生成唯一ID,在Mysql中为'id'吗?我们创建了一个节点

CREATE (n: user{name:"x", age:10}) return n
Run Code Online (Sandbox Code Playgroud)

如果我们想更新'name'属性,如何在Neo4j中进行更新?

小智 9

但是从文档中,

按id搜索节点可以使用谓词中的id()函数来完成.

当节点和关系被删除时,Neo4j重用其内部ID.这意味着使用和依赖内部Neo4j ID的应用程序很脆弱或存在出错的风险.因此建议使用应用程序生成的ID.

如他们所说,使用应用程序生成的ID作为节点的属性存储是一个好主意.

MERGE(n:user {key:})返回n SET n.name ="x",年龄= 10


Chr*_*sen 5

有一个内部ID,您可以访问它的id()功能

CREATE (n:User {name="x", age: 10}) RETURN n, id(n) as nodeId
Run Code Online (Sandbox Code Playgroud)

稍后,您可以使用

MATCH (n) WHERE id(n) = 12345 SET n.name = "y"
Run Code Online (Sandbox Code Playgroud)