MongoDB字符串数据类型太大

时间:2019-10-25 06:21:00

标签: string mongodb mongoose size string-length

我想在mongo-db数据库中写一个段落(字符串),但是由于字符串大小的限制,我无法写完整的段落。如何增加字符串数据类型的限制?

1 个答案:

答案 0 :(得分:1)

根据[BSON规范](http://bsonspec.org/spec.html),字符串类型的长度限制为32位,这远远超出了BSON对象的最大大小。

这里还有其他限制,例如Index Key LimitBSON Document Size

如果您要输入字符串的字段已被索引,则大小将限制为1024个字节,如果索引包含其他字段,则大小可能会更少。

在使用mongo shell进行的快速测试中,我能够插入比16MB限制少30个字节的字符串(为_id和对象开销留出空间):

> db.test.insert({s:"A".repeat(Math.pow(2,20)*16-30)})
WriteResult({ "nInserted" : 1 })
> var obj=db.test.findOne()
> bsonsize(obj)
16777216
> obj.s.length
16777186