1
resposta

[Dúvida] Cadastro não aparece no find

Estou tentando cadastrar um documento via VS Code, porém quando executo o código abaixo roda mas não aparece o documento na consulta , ao rodar novamente aparecerem três vezes. Nem no SQLBooster aparece.

db.Contas.find()      
                    
use("modelagem02")

/* variável */
original_id = ObjectId()

db.Clientes.insertOne({
   "_id": original_id,
   "Nome": "Gustavo Marcos dos Santos",
   "CPF": "936.261.726-94",
   "Data_Nascimento": "11/02/1957",
   "Genero": "Masculino",
   "Profissao": "Gerente de vendas",
   "Status_Civil": "Separado(a)"
})


db.Contas.insertOne({
   "_id": ObjectId(),
   "Creator": {
       "$ref": "Clientes",
       "$id": original_id,
       "db": "modelagem02"
   },
   "Numero_Conta": "484595901-2",
   "Agencia": "5575",
   "Tipo": "Conta Corrente",
   "CPF": "936.261.726-94",
   "Valor": 2.366
})


db.Endereco.insertOne({
   "Creator": {
       "$ref": "Clientes",
       "$id": original_id,
       "db": "modelagem02"
   },
   "Rua": "Adelso Ferreira Tavares",
   "Numero": 661,
   "Bairro": "Tubalina",
   "Cidade": "Uberlândia",
   "Estado": "MG",
   "CEP": "38412-010"
})

use("modelagem02")

db.Clientes.find({})
1 resposta

Oi, José! Como vai?

Puxa, é estranho que isso tenha acontecido. Vamos pensar em algumas possibilidades:

  • Retire as chamadas use("modelagem02") e teste a execução novamente. Como o código especifica explicitamente os bancos de dados nas operações subsequentes (usando $ref, $id e db nos documentos). Isso não deveria causar problemas em si, mas pode ser uma fonte de confusão se o banco de dados não estiver sendo definido corretamente.
  • Verifique se há problemas de conexão com o servidor do banco de dados. Pode haver alguma latência causada ou erro de conexão que esteja causando o comportamento de múltipla inserção. Indico a leitura da documentação para mais detalhes.

Espero que dê tudo certo, José.

Abraços.