MongoDB CRUD-bewerkingen (insert
, update
, find
, remove
) werken allemaal uitsluitend op documenten op het hoogste niveau, hoewel u natuurlijk kunt filteren op velden in ingesloten documenten. Ingesloten documenten worden altijd geretourneerd in het bovenliggende document.
De _id
veld is een verplicht veld van het bovenliggende document en is meestal niet nodig of aanwezig in ingesloten documenten. Als u een unieke identificatiecode nodig heeft, kunt u deze zeker aanmaken en mag u de _id
gebruiken veld om ze op te slaan als dat handig is voor je code of je mentale model; meestal zijn ze vernoemd naar wat ze vertegenwoordigen (bijvoorbeeld "gebruikersnaam", "andere systeemsleutel", enz.). Noch MongoDB zelf, noch een van de stuurprogramma's zal automatisch een _id
. invullen veld behalve in het document op het hoogste niveau.
Specifiek in Java, als u ObjectId-waarden wilt genereren voor de _id
veld in ingesloten documenten, kunt u dit doen met:
someEmbeddedDoc._id = new ObjectId();