sql >> Databasteknik >  >> NoSQL >> MongoDB

Mongoose:Schema vs Model?

I mongoose representerar ett schema strukturen för ett visst dokument, antingen helt eller bara en del av dokumentet. Det är ett sätt att uttrycka förväntade egenskaper och värden samt begränsningar och index. En modell definierar ett programmeringsgränssnitt för att interagera med databasen (läsa, infoga, uppdatera, etc). Så ett schema svarar "hur kommer data i den här samlingen att se ut?" och en modell tillhandahåller funktioner som "Finns det några poster som matchar den här frågan?" eller "Lägg till ett nytt dokument i samlingen".

I rak RDBMS implementeras schemat av DDL-satser (skapa tabell, ändra tabell, etc), medan det inte finns något direkt koncept för en modell, bara SQL-satser som kan göra mycket flexibla frågor (select-satser) såväl som grundläggande infoga, uppdatera , radera operationer.

Ett annat sätt att tänka på det är att SQLs natur gör att du kan definiera en "modell" för varje fråga genom att bara välja särskilda fält samt att sammanfoga poster från relaterade tabeller.

I andra ORM-system som Ruby on Rails, definieras schemat via ActiveRecord-mekanismer och modellen är de extra metoder som din Model-underklass lägger till som definierar ytterligare affärslogik.



  1. spara IP-adress i mongoDB

  2. Multi-samling, multi-dokument "transaktioner" i MongoDB

  3. Mongodb PHP - heltal med decimaler

  4. Konvertera MongoDB BsonDocument till giltig JSON i C#