SóProvas


ID
315721
Banca
FCC
Órgão
TRE-RN
Ano
2011
Provas
Disciplina
Banco de Dados
Assuntos

Considere uma entidade associativa entre Médico e Paciente (n:m) intitulada Consulta que, por sua vez, se relaciona com Medicamento em n:m. No projeto lógico de banco de dados relacional normalizado, este modelo de dados completo será derivado para

Alternativas
Comentários
  • Seria algo como:

    #Médico e Paciente são entidades, em tabelas ficaria:
    1) Medico (  idMedico, nome, crm, ... )
    2) Paciente ( idPaciente, nome, sexo , altura, peso, ... )

    #Consulta é seria uma tabela ligando o idPaciente e idMedico
    3) Consulta ( idConsulta, Paciente_idPaciente , Medico_idMedico );

    #Medicamento também seria outra tabela sem chaves estrangeiras
    4) Medicamento ( idMedicamento, nome , descricao , ... );

    # E finalmente uma tabela ligando a consulta aos medicamentos
    5) Consulta_Medicamento ( Consulta_idConsulta, Medicamento_idMedicamento )

  • Muito bom o comentário do colega acima. Marquei B, não me atentei para a 5ª tabela.
  • Medico
    (codMedico, [outros atirbutos])

    Paciente
    (CodPaciente, [outros atirbutos])

    Medicamento
    (codMedicamento, [outros atirbutos])

    Consulta
    (codConsulta, codMedico, codPaciente, [outros atirbutos])

    Medicamento
    (codConsulta, codMedicamento, [outros atirbutos])
  • Uma forma de matar a questão bem rápido:
    Relacionamento de muitos(*) para muitos(*) sempre gera um associativa.

    Então a questão deu:

    Médico(*)  --- (*)Paciente -> Consulta (associativa)
    Consulta(*) --- (*)Medicamento


    Após normalizar:

    Consulta(*) --- (*)Medicamento -> Consulta_Medicamento (associativa)


    Finalizando, vamos contar todas tabelas:

    Médico + Paciente + Consulta + Medicamento + Consulta_Medicamento = 5

    Boa sorte!