0
respostas

Aula 5 - Atividade 08 Mão na massa - gerenciamento escolar com banco de dados relacional

CREATE TABLE ALUNOS(
ID_ALUNO INT PRIMARY KEY,
NOME_DO_ALUNO VARCHAR(100),
DATA_DE_NASCIMENTO DATE,
GENERO VARCHAR(20),
ENDERECO VARCHAR(150),
TELEFONE_DE_CONTATO VARCHAR(20),
EMAIL VARCHAR(250));

CREATE TABLE PROFESSORES(
ID_PROFESSOR INT PRIMARY KEY,
NOME_DO_PROFESSOR VARCHAR(100),
DATA_DE_NASCIMENTO DATE,
GENERO VARCHAR(20),
TELEFONE_DE_CONTATO VARCHAR(20),
EMAIL VARCHAR(250));

CREATE TABLE DISCIPLINAS(
ID_DISCIPLINA INT PRIMARY KEY,
NOME_DA_DISCIPLINA VARCHAR(100),
DESCRICAO VARCHAR(250),
CARGA_HORARIA DECIMAL(10,2),
ID_PROFESSOR INT,
FOREIGN KEY(ID_PROFESSOR) REFERENCES PROFESSORES(ID_PROFESSOR));

CREATE TABLE TURMAS(
ID_TURMA INT PRIMARY KEY,
NOME_DA_TURMA VARCHAR(100),
ANO_LETIVO INT,
ID_PROFESSOR_ORIENTADOR INT,
FOREIGN KEY(ID_PROFESSOR_ORIENTADOR) REFERENCES PROFESSORES(ID_PROFESSOR));

CREATE TABLE TURMAS_ALUNOS(
ID_TURMA INT,
ID_ALUNO INT,
PRIMARY KEY(ID_TURMA,ID_ALUNO),
FOREIGN KEY(ID_TURMA) REFERENCES TURMAS(ID_TURMA),
FOREIGN KEY(ID_ALUNO) REFERENCES ALUNOS(ID_ALUNO));

CREATE TABLE TURMAS_DISCIPLINAS(
ID_TURMA INT,
ID_DISCIPLINAS INT,
FOREIGN KEY(ID_TURMA) REFERENCES TURMAS(ID_TURMA),
FOREIGN KEY(ID_DISCIPLINAS) REFERENCES DISCIPLINAS(ID_DISCIPLINA));

CREATE TABLE NOTAS(
ID_NOTAS INT PRIMARY KEY,
ID_ALUNO INT,
ID_DISCIPLINA INT,
VALOR_DA_NOTA DECIMAL(10,2),
DATA_DA_AVALIACAO DATE,
FOREIGN KEY(ID_ALUNO) REFERENCES ALUNOS(ID_ALUNO),
FOREIGN KEY(ID_DISCIPLINA) REFERENCES DISCIPLINAS(ID_DISCIPLINA));

INSERT INTO ALUNOS VALUES
(1,'João Silva','2005-03-15','Masculino','Rua das Flores,123','(11)9876-5432','joao@email.com'),
(2,'Maria Santos','2006-06-20','Feminino','Avenida Principal,456','(11)8765-4321','maria@email.com');

INSERT INTO PROFESSORES VALUES
(1,'Ana Oliveira','1980-05-25','Feminino','(11)1234-5678','ana@email.com'),
(2,'Carlos Ferreira','1975-09-12','Masculino','(11)2345-6789','carlos@email.com');

INSERT INTO DISCIPLINAS VALUES
(1,'Matemática','Estudo de conceitos matemáticos',60,1),
(2,'História','História mundial e local',45,2);

INSERT INTO TURMAS VALUES
(1,'Turma A',2023,1),
(2,'Turma B',2023,2);

INSERT INTO TURMAS_ALUNOS VALUES
(1,1),(2,2);

INSERT INTO TURMAS_DISCIPLINAS VALUES
(1,1),(2,2);

INSERT INTO NOTAS VALUES
(2,1,1,6.19,'2023-07-07'),
(3,1,2,7.18,'2023-07-07'),
(12,2,1,1.34,'2023-07-09'),
(13,2,2,3.10,'2023-07-09');

-- Consultas
SELECT * FROM ALUNOS ORDER BY NOME_DO_ALUNO ASC;
SELECT * FROM PROFESSORES;
SELECT * FROM DISCIPLINAS WHERE CARGA_HORARIA > 40;
SELECT * FROM TURMAS;
SELECT * FROM TURMAS_ALUNOS;
SELECT * FROM NOTAS WHERE VALOR_DA_NOTA>6 AND VALOR_DA_NOTA<8;
SELECT * FROM TURMAS_DISCIPLINAS;