He comenzado a usar MongoDB y soy bastante nuevo en esto.
Hay alguna manera de que yo pueda aplicar restricciones en los documentos en MongoDB?
Como la especificación de una clave principal o tomar un atributo como único?
O especificar que un atributo en particular es mayor que un valor mínimo?

2 Comentarios

  1. 18

    Ser un «schemaless de base de datos», algunas de las cosas que mencionas debe ser restringido desde el lado de la aplicación, en lugar de la base de datos secundarios. (tales como «valor mínimo»)

    Sin embargo, puede crear índices (claves para consulta en: recuerde que una consulta sólo puede utilizar un índice en un tiempo, así que es generalmente mejor para el diseño de sus índices en torno a sus consultas, en lugar de sólo el índice de cada campo se puede consultar en contra):
    http://www.mongodb.org/display/DOCS/Indexes#Indexes-Basics

    Y también puede crear índices únicos, que hará cumplir la singularidad similar a una restricción unique (tiene algunas limitaciones, tales como la matriz de campos):
    http://www.mongodb.org/display/DOCS/Indexes#Indexes-unique%3Atrue

  2. 43

    Ir más allá de la restricción de unicidad disponible de forma nativa en los índices, usted necesita usar algo como Mangosta y su capacidad para apoyar basado en el campo validación. Que le brinden apoyo para cosas como el valor mínimo, pero sólo cuando las actualizaciones de ir a través de su Mangosta esquemas y modelos.

    MongoDB 3.2 Actualización De

    Validación de documentos es ahora soportado de forma nativa por MongoDB.

    Ejemplo de la documentación:

    db.createCollection( "contacts",
       { validator: { $or:
          [
             { phone: { $type: "string" } },
             { email: { $regex: /@mongodb\.com$/ } },
             { status: { $in: [ "Unknown", "Incomplete" ] } }
          ]
       }
    } )
    • upvoted como la información es actualizada por última versión de mongo!
    • eso es excelente, he aprendido algo aquí como puedo escanear a través de los artículos aquí. Gracias

Dejar respuesta

Please enter your comment!
Please enter your name here