Olá, Gustavo! Tudo bem?
Pelo que você descreveu, parece que a consulta que você está fazendo está retornando mais de um resultado, quando deveria retornar apenas um. A exceção NonUniqueResultException
é lançada quando o resultado esperado é único, mas a consulta retorna vários resultados.
No seu caso, como você está tentando agendar uma consulta, imagino que você esteja buscando por um médico ou paciente específico. Se a busca estiver sendo feita por ID, como parece ser o caso, você precisa garantir que os IDs sejam únicos para cada entidade.
Verifique se não há mais de um médico ou paciente com o mesmo ID no banco de dados. Você pode fazer isso manualmente ou adicionando uma restrição de unicidade no seu banco de dados.
Outra possibilidade é que a consulta esteja mal formulada e esteja retornando mais resultados do que deveria. Nesse caso, você precisaria revisar a consulta para garantir que ela está correta.
Por exemplo, se você estiver usando JPA, uma consulta que deveria retornar um único resultado poderia ser assim:
Medico medico = entityManager.createQuery(
"SELECT m FROM Medico m WHERE m.id = :id", Medico.class)
.setParameter("id", idMedico)
.getSingleResult();
Espero ter ajudado e bons estudos!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.