sql >> Base de Datos >  >> NoSQL >> MongoDB

¿Existe un límite de longitud para los valores de campo en las consultas de mongo?

El límite que está encontrando es el tamaño máximo de búfer de línea en el mongo shell, que es 4096 bytes como en MongoDB 2.2.1. Si intenta pegar su ejemplo en mongo shell, debe notar que no puede agregar ningún carácter más allá del límite de línea.

Si ejecuta esta consulta desde un controlador de idioma no tendrás este problema.

También podría solucionar esto en mongo shell cargando la consulta desde un archivo JavaScript especificado en la línea de comando:

 mongo longname.js

O creando una cadena larga en mongo shell programáticamente:

// Longname will be 5000 characters
var longname = '';
for (i = 0; i < 200; i++) {
    longname += 'Abcdefghijklmnopqrstuvwx ';
}

db.foo.insert({
  _id: ObjectId("508836afea5cea2ccec11a0d"),
  created_at: 1348657869.204,
  name: longname
});

printjson(db.foo.findOne({name: longname}))