MongoDB
 sql >> Database >  >> NoSQL >> MongoDB

Imposta limiti sulla raccolta di db mongo

Questo può essere ottenuto facilmente utilizzando Raccolte limitate in mongodb.puoi impostare un limite al numero di documenti, quindi nel tuo caso puoi impostare il numero massimo di documenti su 1 come di seguito:

db.createCollection("numbers", { capped : true, size:4000,  max : 1 } )

Inoltre, se desideri impostare la tua raccolta come limitata dallo schema mongoose, puoi farlo utilizzando l'opzione limitata come segue:

var numbersSchema = new mongoose.Schema({
  seconds: Number
},{ capped : true, size:4000,  max : 1 })

Questa raccolta conterrà sempre un solo documento che può essere aggiornato. Tieni presente che i documenti una volta inseriti in raccolte limitate non possono essere eliminati . Quindi questo risolve anche il tuo problema di eliminazione.

Anche la size opzione che devi specificare, può essere qualsiasi valore intero positivo, che verrà convertito internamente da mongo a un minimo di 4096 bytes , o multiplo più vicino di 256.

IMPORTANTE:

Fonte:Documenti MONGODB

Inoltre, se desideri impostare il valore minimo o massimo sui secondi, puoi sempre utilizzare mongoose min- massimo convalide. Quindi lo schema seguente dovrebbe funzionare per te.
var numbersSchema = new mongoose.Schema({
  seconds: { type: Number, min: 60 }
},{ capped : true, size:4000,  max : 1 })