1
resposta

Chave primária incompleta

O exemplo mostrado foram só 5 linhas. Ocorre que os dados podem ser diferentes nessas 5 linhas. Não dá para deduzir a corretude da chave apenas com essas poucas linhas.

Vamos a um contraexemplo simples. O número de alunos matriculados suplantou o tamanho da turma para a disciplina MAT01 Então foram abertas duas turmas pela faculdade, uma pra o professor Paulo e outra para a Professora Beatriz. Ao se colocar a chave como disciplina e semestre ao se tentar inserir a linha fora do sample (exemplo) daria erro de chave duplicada.

Numa estrutura mais elaborada teríamos a tabela de disciplina, a tabela de professores (inclusive um responsável por cada disciplina, fora os que lecionam), uma tabela de matrículas. Na tabela de matrículas teríamos o código da disciplina e a data como critério de entrada (há uma matrícula na disciplina X no semestre Y), só que a chave teria que incluir também o professor que leciona (que poderia ser o código do professor), o código do aluno, etc.

Se a necessidade não fosse plara matrícula, mas a disciplinas oferecidas no semestre (um segundo uso) daí só teríamos a chave composta para a tabela, código do curso e semestre. Já se a necessidade fosse das turmas formadas, pela quantidade de alunos previstos para a matrícula, previsão para o próximo semestre, daí a chave já seria total e composta por código do cruso, código do professor e semestre. Lembrando que, por questões de horário dos alunos, duas ocorrências da mesma turma, no mesmo semestre, podem ser no mesmo horário, para que todos os alunos se matriculem sem gerar sobreposições de horários com outras turmas.

De qualquer forma, o sample de 5 linhas não é suficiente para definir corretamente a chave primária. Se o sample for o total da tabela para colocar o código da disciplina, mas como está, sem informações adicionais, como uma regra de negócio que obrigue um único discente para cada disciplina, não há como saber o tamanho correto da chave primária.

Lamentável

1 resposta

Ei, José! Como vai?

Obrigada por trazer o seu feedback sobre a atividade. Você trouxe uma observação que é importante considerarmos.

No contexto da atividade, que é um exercício simplificado, a chave primária proposta da amostra é DISCIPLINA e SEMESTRE. Assim, cada disciplina em um dado semestre, é oferecida uma única vez, com um único professor. Justamente por ser um exemplo simples para treinar inicialmente, não oferece múltiplas turmas para a mesma disciplina no mesmo semestre, como você trouxe no seu contra-exemplo.

Concordo que em outro contexto, cinco linhas de amostra pode ser pequena, precisaríamos de mais dados e de regras de negócio, como "uma disciplina por semestre tem só uma turma" ou "múltiplas turmas são possíveis". Se a escola permite várias turmas (com diferentes professores) para a mesma disciplina no mesmo semestre, a chave precisaria incluir outro campo, como PROFESSOR ou um código de turma. Iria muito além do que o exemplo da atividade.

De qualquer forma, encaminharei o seu feedback para a equipe responsável ter conhecimento e para considerá-lo em futuras melhorias em nossos conteúdos.

Agradeço mais uma vez e desejo bons estudos!

Espero ter ajudado e conte sempre conosco.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado!