Seja o seguinte modelo E-R: Deverão ser criadas tabelas relacionais que preservem a semântica do modelo E-R apresentado e que atendam à 2a forma normal. Qual esquema atende a esses requisitos?
- A CREATE TABLE ALUNO ( MATRICULA INTEGER NOT NULL, NOME TEXT NOT NULL, PRIMARY KEY (MATRICULA)); CREATE TABLE DISCIPLINA ( CODIGO TEXT NOT NULL, NOME TEXT NOT NULL, CARGA_HOR INTEGER NOT NULL, MAT_PROF INTEGER NOT NULL, NOME_PROF TEXT NOT NULL, PRIMARY KEY (CODIGO)); CREATE TABLE CURSOU ( MAT_ALUNO INTEGER NOT NULL, COD_DISC TEXT NOT NULL, ANO_PER TEXT NOT NULL, NOTA NUMERIC (3,1) NOT NULL, PRIMARY KEY (MAT_ALUNO, COD_DISC, ANO_PER), FOREIGN KEY (MAT_ALUNO) REFERENCES ALUNO (MATRICULA), FOREIGN KEY (COD_DISC) REFERENCES DISCIPLINA (CODIGO))
- B CREATE TABLE ALUNO ( MATRICULA INTEGER NOT NULL, NOME TEXT NOT NULL, PRIMARY KEY (MATRICULA)); CREATE TABLE DISCIPLINA ( CODIGO TEXT NOT NULL, NOME TEXT NOT NULL, CARGA_HOR INTEGER NOT NULL, MAT_PROF INTEGER NOT NULL, NOME_PROF TEXT NOT NULL, PRIMARY KEY (CODIGO)); CREATE TABLE CURSOU ( MAT_ALUNO INTEGER NOT NULL, COD_DISC TEXT NOT NULL, ANO_PER TEXT NOT NULL, NOTA NUMERIC (3,1) NOT NULL, NOME_DISCIPLINA TEXT NOT NULL, PRIMARY KEY (MAT_ALUNO, COD_DISC, ANO_PER), FOREIGN KEY (MAT_ALUNO) REFERENCES ALUNO (MATRICULA), FOREIGN KEY (COD_DISC) REFERENCES DISCIPLINA (CODIGO))
- C CREATE TABLE ALUNO ( MATRICULA INTEGER NOT NULL, NOME TEXT NOT NULL, PRIMARY KEY (MATRICULA)); CREATE TABLE PROFESSOR ( MATRICULA INTEGER NOT NULL, NOME TEXT NOT NULL, PRIMARY KEY (MATRICULA)); CREATE TABLE DISCIPLINA ( CODIGO TEXT NOT NULL, NOME TEXT NOT NULL, CARGA_HOR INTEGER NOT NULL, MAT_PROF INTEGER NOT NULL, PRIMARY KEY (CODIGO), FOREIGN KEY (MAT_PROF) REFERENCES PROFESSOR (MATRICULA)); CREATE TABLE CURSOU ( MAT_ALUNO INTEGER NOT NULL, COD_DISC TEXT NOT NULL, ANO_PER TEXT NOT NULL, NOTA NUMERIC (3,1) NOT NULL, PRIMARY KEY (MAT_ALUNO, COD_DISC), FOREIGN KEY (MAT_ALUNO) REFERENCES ALUNO (MATRICULA), FOREIGN KEY (COD_DISC) REFERENCES DISCIPLINA (CODIGO)); 1 2
- D CREATE TABLE ALUNO ( MATRICULA INTEGER NOT NULL, NOME TEXT NOT NULL, PRIMARY KEY (MATRICULA)); CREATE TABLE PROFESSOR ( MATRICULA INTEGER NOT NULL, NOME TEXT NOT NULL, PRIMARY KEY (MATRICULA)); CREATE TABLE DISCIPLINA ( CODIGO TEXT NOT NULL, NOME TEXT NOT NULL, CARGA_HOR INTEGER NOT NULL, MAT_PROF INTEGER NOT NULL, PRIMARY KEY (CODIGO), FOREIGN KEY (MAT_PROF) REFERENCES PROFESSOR (MATRICULA)); CREATE TABLE CURSOU ( MAT_ALUNO INTEGER NOT NULL, COD_DISC TEXT NOT NULL, ANO_PER TEXT NOT NULL, NOTA NUMERIC (3,1) NOT NULL, NOME_DISCIPLINA TEXT NOT NULL, PRIMARY KEY (MAT_ALUNO, COD_DISC, ANO_PER), FOREIGN KEY (MAT_ALUNO) REFERENCES ALUNO (MATRICULA), FOREIGN KEY (COD_DISC) REFERENCES DISCIPLINA (CODIGO))
- E CREATE TABLE ALUNO ( MATRICULA INTEGER NOT NULL, NOME TEXT NOT NULL, PRIMARY KEY (MATRICULA)); CREATE TABLE PROFESSOR ( MATRICULA INTEGER NOT NULL, NOME TEXT NOT NULL, PRIMARY KEY (MATRICULA)); CREATE TABLE DISCIPLINA ( CODIGO TEXT NOT NULL, NOME TEXT NOT NULL, CARGA_HOR INTEGER NOT NULL, MAT_PROF INTEGER NOT NULL, PRIMARY KEY (CODIGO), FOREIGN KEY (MAT_PROF) REFERENCES PROFESSOR (MATRICULA)); CREATE TABLE CURSOU ( MAT_ALUNO INTEGER NOT NULL, COD_DISC TEXT NOT NULL, ANO_PER TEXT NOT NULL, NOTA NUMERIC (3,1) NOT NULL, NOME_DISCIPLINA TEXT NOT NULL, PRIMARY KEY (MAT_ALUNO, COD_DISC, ANO_PER), FOREIGN KEY (MAT_ALUNO) REFERENCES ALUNO (MATRICULA), FOREIGN KEY (COD_DISC) REFERENCES DISCIPLINA (CODIGO))