Bom dia Pessoal,
Estou com uma atividade em Modelagem de Banco de dados queria uma ajuda de vocês de como começar e entende o caso. Não entendi muito bem como vou fazer os relacionamentos. Poderia da uma força ai?
Bom dia Pessoal,
Estou com uma atividade em Modelagem de Banco de dados queria uma ajuda de vocês de como começar e entende o caso. Não entendi muito bem como vou fazer os relacionamentos. Poderia da uma força ai?
Bom… no meu entendimento acho que seria mais ou menos assim:
Tabela Aluno(id, nome,fone, email);
Tabela oficina(id,nomeOficina, id_nivel, id_aluno);
Tabela nivel(id,nivel, id_valor);
Tavela valores(id, valor);
Um aluno pode se inscrever em apenas uma oficina;
Uma oficina pode ter varios alunos;
Uma oficina possui varios niveis;
@Jederson_Andre, não é viável fazer isso
pois isso limitaria cada oficina cadastrada a ter apenas um aluno, não é mesmo?
O correto é inserir a coluna da FK de oficina no aluno, restringindo sua participação em uma única oficina.
E a questão dados dos alunos que já pagaram?
Acho que poderia criar-se uma tabela de pagamentos
Tabela pagamento(id,dataPg, dataLancamentoRegistro, id_aluno, id_curso, id_nivel);
Adiciona uma coluna na tabela aluno, onde você insere ‘P’ se pagou e pode deixar nulo ou ‘N’ caso não.
Eu acho que deveria usar do @Jederson_Andre porque vou ter mais dados como data de pagamento. Se eu adicionar somante uma coluna não teria como fazer por mês… Isso futuramente. Então pessoal com FK ficaria como…
Pessoal pelo que me passaram entendi isso:
Alguns atributos acho que estão errados rsrs.
Me ajudem ‘-’
Cara, não leu o que eu comentei sobre oficina com FK para aluno?
A certo, perguntei antes como ficaria então essa FK? Sou bem iniciante mesmo…
Me de um exemplo de como ficaria por favor.
Seguindo o que você apresentou, quando você for cadastrar uma oficina, terá algo como
INSERT INTO OFICINA (idoficina, nomeoficina. id_nive, id_aluno) VALUES (1, 'Oficina 1', 1, 'João da Silva');
Se você precisar adicionar mais alunos que se cadastraram para a oficina, isso ficará como? Você acabará duplicando os dados da tal oficina, não é?
Agora, se você segue a minha abordagem, colocando a FK de oficina no aluno, esse problema não existe, afinal, tem uma regra que diz que cada aluno só pode se inscrever em uma única oficina, né?
No exercício não consta parte de inscrição, mas na sua abordagem bem melhor deu para eu entende, agora quero sabe como colocar isso na modelagem.
1 - tira a coluna aluno_id da tabela oficina
2 - Cria uma coluna chamada oficina_id com o mesmo tipo de dado da coluna idOficina da tabela oficina.
Aí você resolveu essa parte
Relendo as regras, eu faria assim
1 - Prefira usar valores com pontos flutuantes para valores, no caso, float.
2 - Você não representou a relação entra oficina e nivel, é uma relação 1 : N, cada oficina está associada a um único nível, mas, cada nível pode ser conectado com mais de uma oficina.
Com as alterações: