我有一个带有一些十六进制整数的数据集,如'4726E440'。我想将这些数字添加为节点的属性。如果我执行:
CREATE({id:to Int(“4726E440”)});
neo4j给了我这个错误:
整数,4726E440,太大了
有没有办法处理这种整数(除了将它们保存为字符串)?
不是100%肯定,但这看起来像你正在尝试将持有浮点数4724 * 10 ^ 440的字符串转换为int值。那显然太大了。
如果你想使用十六进制文字,你需要在它们前加上0x
,例如:
return toInt(0x4726E440)
返回1193731136
- 所以它仍在范围内。
如果您想知道Neo4J中数字大小的实际限制是多少,this论坛帖子可能会让您感兴趣。
基本上,Neo4J使用带有最大2**63 - 1
的带符号64位整数。目前似乎无法增加此限制,如果您真的需要存储此大小的数字,则必须使用字符串或字节列表。