用户定义密钥的值限制是什么?

时间:2014-12-04 15:34:56

标签: arangodb

在ArangoDB中,当一个集合被定义为允许用户定义的密钥时,密钥值的限制是什么?例如,似乎"Name-2"的密钥有效,但"Name,2"的密钥会出现ArangoError 1221: invalid document key错误。

2 个答案:

答案 0 :(得分:7)

引自the manual

  • 键必须是字符串值。不允许使用数字键,但可以将任何数值放入字符串中,然后可以将其用作文档键。
  • 密钥必须至少为1个字节,最多为254个字节。指定时不允许使用空键(尽管从文档中完全省略_key属性可能有效)
  • 必须包含字母a-z(大写或小写),数字0-9或以下任何标点字符:_ - {{1} } : . @ ( ) + , = ; {{1} } $ ! *
  • 任何其他字符,尤其是多字节UTF-8序列,空格或标点字符不能在键值内使用
  • 密钥在使用的集合中必须是唯一的

密钥区分大小写,即'%被视为不同的密钥。

答案 1 :(得分:1)

用户定义密钥的限制(或命名约定)可在文档here中找到。