Criar Coleções e Referenciar Documentos
Nesta etapa, você configurará seu banco de dados e criará duas coleções: authors e books. Você aprenderá o conceito fundamental de referenciamento de documentos vinculando um livro ao seu autor.
Primeiro, abra o MongoDB Shell. Este shell interativo é onde você executará todos os seus comandos de banco de dados.
mongosh
Uma vez dentro do shell, você verá um prompt test>. Mude para um novo banco de dados chamado library_db. Se o banco de dados não existir, o MongoDB o criará quando você armazenar dados pela primeira vez.
use library_db
Agora, crie seu primeiro autor. Insira um documento na coleção authors. Estamos especificando um _id personalizado para este autor para facilitar a referência posterior.
db.authors.insertOne({
_id: ObjectId("6633c9a5b4e3e8a5c8a8f8b1"),
name: "Jane Austen",
nationality: "British",
birthYear: 1775
})
Em seguida, insira um documento na coleção books. O campo author_id contém o ObjectId do autor que você acabou de criar. É assim que você cria uma referência.
db.books.insertOne({
title: "Pride and Prejudice",
author_id: ObjectId("6633c9a5b4e3e8a5c8a8f8b1"),
published: 1813,
genre: "Classic Literature"
})
Você agora criou um relacionamento um-para-um. Para verificar isso, você pode recuperar os documentos que acabou de criar.
Primeiro, encontre o autor:
db.authors.findOne({ name: "Jane Austen" })
Exemplo de Saída:
{
_id: ObjectId("6633c9a5b4e3e8a5c8a8f8b1"),
name: 'Jane Austen',
nationality: 'British',
birthYear: 1775
}
Agora, encontre o livro e observe o campo author_id, que se vincula ao autor.
db.books.findOne({ title: "Pride and Prejudice" })
Exemplo de Saída:
{
_id: ObjectId("..."),
title: 'Pride and Prejudice',
author_id: ObjectId("6633c9a5b4e3e8a5c8a8f8b1"),
published: 1813,
genre: 'Classic Literature'
}
Você pode permanecer no shell mongosh para as próximas etapas.