6
respostas

[Projeto] Projeto Gerenciamento Escolas

1 - Tabela "Alunos"

CREATE TABLE TabelaAlunos 
(ID_do_Aluno INT PRIMARY key,
 Nome_do_aluno VARCHAR(250),
 Data_de_nascimento_do_aluno DATE,
 Genero_do_aluno VARCHAR(20),
 Endereco_do_aluno VARCHAR(250),
 Telefone_de_contato_do_aluno INT,
 Email_do_aluno VARCHAR(100));

2 - Tabela "Professores"

CREATE TABLE TabelaProfessores
(ID_do_Professor INT PRIMARY KEY,
 Nome_do_Professor VARCHAR(250),
 Data_de_Nascimento_Professor DATE,
 Genero_do_Professor VARCHAR(20),
 Telefone_de_contato_professor INT,
 Email_do_Professor VARCHAR(100));

3 - Tabela "Disciplinas"

CREATE TABLE TabelaDisciplinas
(ID_Disciplina INT PRIMARY KEY,
 Nome_da_Disciplina VARCHAR(250),
 Descricao_Disciplina TEXT,
 Carga_horaria INT,
 ID_do_Professor INT,
 FOREIGN key (ID_do_Professor) REFERENCES TabelaProfessores (id_do_professor));

4 - Tabela "Turmas"

CREATE TABLE ID_da_Turma INT PRIMARY KEY,
 Nome_da_Turma VARCHAR(250),
 Ano_Letivo INT,
 ID_do_Professor_Orientador INT,
 FOREIGN KEY (ID_do_Professor_Orientador) REFERENCES TabelaProfessores (id_do_professor));

5 - Tabela "Turma_Disciplinas"

CREATE TABLE TabelaTurmasDisciplinas 
(ID_da_Turma INT,
 ID_das_Disciplinas INT,
 FOREIGN KEY (ID_da_Turma) REFERENCES TabelaTurmas (id_da_turma),
 FOREIGN KEY (ID_das_Disciplinas) REFERENCES TabelaDisciplinas (id_disciplina));

6 - Tabela "Turma_Alunos"

CREATE TABLE TabelaTurmaAlunos
(ID_da_Turma INT,
 ID_dos_Alunos INT,
 FOREIGN key (ID_da_Turma) references TabelaTurmas (id_da_turma),
 FOREIGN KEY (ID_dos_Alunos) REFERENCES TabelaAlunos (id_do_aluno));

7 - Tabela "Notas"

CREATE TABLE TabelaNotas
(ID_da_Nota INT PRIMARY KEY,
 ID_do_Aluno INT,
 ID_da_disciplina INT,
 Nota DECIMAL (10,2),
 Data_Avaliação DATE,
 FOREIGN KEY(ID_do_Aluno) REFERENCES TabelaAlunos (id_do_aluno),
 FOREIGN KEY (ID_da_disciplina) REFERENCES TabelaDisciplinas (id_disciplina));
6 respostas

2 - Inserindo dados

INSERT INTO TabelaAlunos
(id_do_aluno,
 nome_do_aluno,
 data_de_nascimento_do_aluno,
 genero_do_aluno,
 endereco_do_aluno,
 telefone_de_contato_do_aluno,
 email_do_aluno)
 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'),
('3','Pedro Soares','2004-01-10','Masculino','Rua Central, 789','(11) 7654-3210','pedro@email.com'),
('4','Ana Lima','2005-04-02','Feminino','Rua da Escola, 56','(11) 8765-4321','ana@email.com'),
('5','Mariana Fernandes','2005-08-12','Feminino','Avenida da Paz, 789','(11) 5678-1234','mariana@email.com'),
('6','Lucas Costa','2003-11-25','Masculino','Rua Principal, 456','(11) 1234-5678','lucas@email.com'),
('7','Isabela Santos','2006-09-10','Feminino','Rua da Amizade, 789','(11) 9876-5432','isabela@email.com'),
('8','Gustavo Pereira','2004-05-15','Masculino','Avenida dos Sonhos, 123','(11) 7654-3210','gustavo@email.com'),
('9','Carolina Oliveira','2005-02-20','Feminino','Rua da Alegria, 456','(11) 8765-4321','carolina@email.com'),
('10','Daniel Silva','2003-10-05','Masculino','Avenida Central, 789','(11) 1234-5678','daniel@email.com'),
('11','Larissa Souza','2004-12-08','Feminino','Rua da Felicidade, 123','(11) 9876-5432','larissa@email.com'),
('12','Bruno Costa','2005-07-30','Masculino','Avenida Principal, 456','(11) 7654-3210','bruno@email.com'),
('13','Camila Rodrigues','2006-03-22','Feminino','Rua das Estrelas, 789','(11) 8765-4321','camila@email.com'),
('14','Rafael Fernandes','2004-11-18','Masculino','Avenida dos Sonhos, 123','(11) 1234-5678','rafael@email.com'),
('15','Letícia Oliveira','2005-01-05','Feminino','Rua da Alegria, 456','(11) 9876-5432','leticia@email.com'),
('16','Fernanda Lima','2004-02-12','Feminino','Rua da Esperança, 789','(11) 4567-8901','fernanda@email.com'),
('17','Vinícius Santos','2003-07-28','Masculino','Avenida da Amizade, 123','(11) 8901-2345','vinicius@email.com'),
('18','Juliana Pereira','2006-09-01','Feminino','Rua das Rosas, 789','(11) 3456-7890','juliana@email.com');

3 - Realizando consulta simples "verificando se os dados foram importados corretamente" :

SELECT * FROM TabelaAlunos;

2- ...

INSERT INTO TabelaDisciplinas
(id_disciplina,
 nome_da_disciplina,
 descricao_disciplina,
 carga_horaria,
 id_do_professor)
 VALUES
('1','Matemática','Estudo de conceitos matemáticos avançados','60','1'),
('2','História','História mundial e local','45','2'),
('3','Física','Princípios fundamentais da física','60','1'),
('4','Química','Estudo da química e suas aplicações','45','3'),
('5','Inglês','Aulas de inglês para iniciantes','45','4'),
('6','Artes','Exploração da criatividade artística','30','5');

3 - ...

SELECT * FROM TabelaDisciplinas;

2 - ...

INSERT INTO TabelaNotas
(id_da_nota,
 id_do_aluno,
 id_da_disciplina,
 nota,
 data_avaliação)
 VALUES
 ('2','1','1','6.19','07-07-2023'),
('3','1','2','7.18','07-07-2023'),
('4','1','3','7.47','07-07-2023'),
('5','1','4','7.46','07-07-2023'),
('6','1','5','4.35','07-07-2023'),
('7','1','6','4.43','07-07-2023'),
('8','1','7','0.76','07-07-2023'),
('9','1','8','9.22','07-07-2023'),
('10','1','9','9.04','07-07-2023'),
('11','1','10','3.28','07-07-2023'),
('12','2','1','1.34','09-07-2023'),
('13','2','2','3.1','09-07-2023'),
('14','2','3','1.66','09-07-2023'),
('15','2','4','0.03','09-07-2023'),
('16','2','5','4.34','09-07-2023'),
('17','2','6','4.02','09-07-2023'),
('18','2','7','8.79','09-07-2023'),
('19','2','8','1.17','09-07-2023'),
('20','2','9','8.26','09-07-2023'),
('21','2','10','3.41','09-07-2023'),
('22','3','1','6.82','27-07-2023'),
('23','3','2','8.21','27-07-2023'),
('24','3','3','1.3','27-07-2023'),
('25','3','4','4.01','27-07-2023'),
('26','3','5','0.25','27-07-2023'),
('27','3','6','6.63','27-07-2023'),
('28','3','7','9.74','27-07-2023'),
('29','3','8','3.77','27-07-2023'),
('30','3','9','0.58','27-07-2023'),
('31','3','10','8.52','27-07-2023'),
('32','4','1','8.37','08-08-2023'),
('33','4','2','0.26','08-08-2023'),
('34','4','3','5.95','08-08-2023'),
('35','4','4','6.98','08-08-2023'),
('36','4','5','6.18','08-08-2023'),
('37','4','6','4.79','08-08-2023'),
('38','4','7','7.96','08-08-2023'),
('39','4','8','0.62','08-08-2023'),
('40','4','9','7.77','08-08-2023'),
('41','4','10','5.81','08-08-2023'),
('42','5','1','2.25','15-08-2023'),
('43','5','2','5.82','15-08-2023'),
('44','5','3','4.11','15-08-2023'),
('45','5','4','7.99','15-08-2023'),
('46','5','5','3.23','15-08-2023'),
('47','5','6','8.09','15-08-2023'),
('48','5','7','8.24','15-08-2023'),
('49','5','8','3.33','15-08-2023'),
('50','5','9','4.24','15-08-2023'),
('51','5','10','0.11','15-08-2023');

3 - ...

SELECT*FROM TabelaNotas;

2 - Inserindo dados

INSERT INTO TabelaProfessores
(id_do_professor,
 nome_do_professor,
 data_de_nascimento_professor,
 genero_do_professor,
 telefone_de_contato_professor,
 email_do_professor)
 VALUES
 ('1','Ana Oliveira','25-05-1980','Feminino','(11) 1234-5678','ana@email.com'),
('2','Carlos Ferreira','12-09-1975','Masculino','(11) 2345-6789','carlos@email.com'),
('3','Mariana Santos','15-03-1982','Feminino','(11) 3456-7890','mariana@email.com'),
('4','Ricardo Silva','20-08-1978','Masculino','(11) 7890-1234','ricardo@email.com'),
('5','Fernanda Lima','30-01-1985','Feminino','(11) 4567-8901','fernanda@email.com');

3 - Realizando consulta simples "verificando se os dados foram importados corretamente" :

SELECT * FROM TabelaProfessores;

2 - Inserindo dados

INSERT INTO TabelaTurmaAlunos
(ID_da_Turma,
 ID_dos_Alunos)
 VALUES
 ('1','1'),
('2','2'),
('3','3'),
('4','4'),
('5','5'),
('1','6'),
('2','7'),
('3','8'),
('4','9'),
('5','10');

3 - Realizando consulta simples "verificando se os dados foram importados corretamente" :

SELECT * FROM TabelaTurmaAlunos;

2 - Inserindo dados

 INSERT INTO TabelaTurmasDisciplinas
(ID_da_Turma,
 id_das_disciplinas)
 VALUES
 ('1','1'),
('2','2'),
('3','3'),
('4','4'),
('5','5'),
('1','3'),
('2','1'),
('3','2');

3 - Realizando consulta simples "verificando se os dados foram importados corretamente" :

SELECT*FROM TabelaTurmasDisciplinas;

2 - Inserindo dados:

INSERT INTO TabelaTurmas
(ID_da_Turma,
 nome_da_turma,
 ano_letivo,
 id_do_professor_orientador)
 VALUES
 ('1','Turma A','2023','1'),
('2','Turma B','2023','2'),
('3','Turma C','2023','3'),
('4','Turma D','2023','4'),
('5','Turma E','2023','5');

3 - Realizando consulta simples "verificando se os dados foram importados corretamente" :

SELECT*FROM TabelaTurmas;

3.2 - Retorne as informações de todos os alunos ordenados pelo nome.

SELECT*FROM TabelaAlunos ORDER BY  nome_do_aluno ASC;

3.3 - Retornar a disciplina que possui a carga horaria maior que 40.

SELECT*FROM TabelaDisciplinas WHERE  carga_horaria >40;

4.4- Buscar as notas que são maiores que 6 e menores que 8:

SELECT * FROM TabelaNotas WHERE nota >6 and nota <8;

Olá, Vitor! Como vai?

Fico feliz em poder acompanhar seu empenho em desenvolver os desafios propostos nesse curso SQL, continue postando suas soluções e contribuindo com a comunidade Alura! E sobre seus códigos, você usou muito bem o CREATE TABLE, dá pra ver que você entendeu direitinho como definir os tipos de dados.

Outro ponto positivo foi o uso do INSERT INTO de forma eficiente, alimentando a tabela com vários dados de maneira bem distribuída. Também curti demais a forma como você usou o SELECT de um jeito variado, com cláusulas ORDER BY e WHERE.

E algo interessante para você testar é listar apenas as colunas que realmente precisa em vez de usar *, o que torna a consulta mais eficiente. Por exemplo:

SELECT nome_disciplina, carga_horaria FROM TabelaDisciplinas WHERE carga_horaria > 40;

Dessa maneira a visualização da tabela fica mais clara dependendo do seu objetivo.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!