使用long作为实体ID的Neo4J似乎不起作用

时间:2014-02-20 14:40:55

标签: neo4j cypher neo4jclient

我正在开始使用Neo4J作为我的主要数据存储的第一个项目。 我们使用Snowflake.Net作为ID生成系统。

这一切在开始时运作良好,因为我们将ID保存为字符串以克服javascript中longs的限制。这有点被证明是一个糟糕的设计决策,因为它使得分页这样的事情非常困难。

我们随后重新考虑因为我们使用long(64位int)作为Id 生成如下ID:5836423911667012000 但是现在我们无法使用ID匹配(请参阅附件) http://i28.photobucket.com/albums/c222/primalfear83/c1_zpsa2893e35.png http://i28.photobucket.com/albums/c222/primalfear83/c2_zps6b335e02.png

如果我们使用32位int,但是没有任何64位int值,我们的Id字段会起作用。 所以我们可以查看ID 57073。

对此背后的原因或可能的解决方案的任何见解都将非常感激。

1 个答案:

答案 0 :(得分:0)

问题似乎出现在Neo4J Web管理UI中,其中UI上的输出并不是数据库中发生的事情的真实指示。

我已经完成了一些测试,我的所有语句现在都正常工作,只要我不尝试使用网络管理员中显示的值... 真实身份:436565277858205696 |网站管理员:436565277858205700 真实ID:436570021204987904 |网站管理员:436570021204987900