我删除了参考节点。所以我需要重新创建参考节点。 使用cypher如何创建id为0的节点?
感谢。
答案 0 :(得分:1)
简短的回答是你做不到,而你却不需要。没有那个节点你有特定的问题吗?如果是这样,也许你可以详细说明,有可能比尝试重新创建具有特定id的节点更能解决问题。
答案很长,你不能将id:s分配给带有cypher的节点。 id是磁盘上节点存储的索引或偏移量,因此让Neo4j担心它并且不试图操纵它或将其包含在任何应用程序逻辑中是有意义的。请参阅Node identifiers in neo4j和Has anyone used Neo4j node IDs as foreign keys to other databases for large property sets?。
您也很可能不需要参考节点。它默认在新数据库中创建,但它的使用已弃用,在将来的版本中将不存在。请参阅Is concept of reference node in neo4j still used or deprecated?。
如果您仍想为您创建的节点分配ID,则可能会以迂回方式使用CSV批量导入程序(1,2)并且我相信使用Java API batch inserter。
如果您仍想重新创建或模拟参考节点,您可以删除数据库数据文件并让Neo4j重新创建数据库,或者您可以尝试此人所做的事情:Recreate reference node in a Neo4j database。您还可以强制Neo4j更快地回收已删除节点的ID,以便您创建的新节点接收已释放但尚未重新分配的ID。