Consultas SQL: estudante universitário e sistema de gerenciamento de cursos
Introdução Na era digital de hoje, os bancos de dados desempenham um papel crucial no gerenciamento e organização de informações com eficiência. O SQL (linguagem de consulta estruturada) é a espinha dorsal dos bancos de dados relacionais, permitindo -nos criar, modificar e recuperar dados de maneira estruturada. Este blog demonstra um estudante universitário e um sistema de gerenciamento de cursos usando o Oracle LivesQL. Através de um conjunto de 10 tarefas SQL – incluindo DDL, DML, Alter, restrições, funções, operações agregadas, ingressos, agrupa -se por visualizações e procedimentos armazenados – exploraremos como projetar e consultar bancos de dados relacionais eficazmente. Use os alunos da tabela de comprimidos do aluno do caso (número do aluno (Número Primário, nome Varchar2 (50) NÃO NULL, DEPT VARCHAR2 (30), DAB DAB, EMAIL VARCHAR2 (50) exclusivo); Cursos Cursos de Tabela de Tabelas (Número do Curso Chave Primária, CourseName Varchar2 (50) Não NULL, Número de Créditos (2)); Tabela de inscrições (Relacionamento para muitos para muitos) Crie matrículas de tabela (Número de inscrição Chave primária, número do aluno referências aos alunos (StudentId), Curso de Curso de Referência de Referências a Referências a Referências (CourseId), Char Char (2)); 1. DDL – Criar tabela do corpo docente Criar tabela Faculdade (Número do Facultyid Chave primária, Facultyname Varchar2 (50) Não NULL, Departamento Varchar2 (30), email Varchar2 (50) exclusivo); Cria um novo corpo docente de tabela com o Facultyid como a chave primária, a facultyname como não nula e e -mail como exclusiva. 2. DML-Insira 3 alunos Inserir em estudantes (StudentId, Nome, Departamento, DOB, E-mail) valores (1, ‘Amit Sharma’, ‘Ciência da Computação’, To_date (‘2002-05-12’, ‘AAAA-MM-DD’), ‘amit@college.edu’); Insira os valores dos alunos (StudentID, nome, departamento, DOB, e-mail) (2, ‘Priya Verma’, ‘Electronics’, To_Date (‘2001-08-23’, ‘AAA YYYY-MM-DD’), ‘Priya@college.edu’); Insira os valores dos alunos (StudentId, nome, departamento, DOB, e-mail) (3, ‘Rahul mehta’, ‘Mechanical’, to_date (‘2000-11-05’, ‘yyyy-mm-dd’), ‘rahul@college.edu’); Insira 3 registros de alunos na tabela de alunos com diferentes departamentos. 3. ALTER TABLE – Adicione o número de telefone Alter Table StudentsAdd Phoneno Varchar2 (10); Adiciona um novo phoneno de coluna à tabela dos alunos para armazenar números de telefone de 10 dígitos. 4. Definição de restrições – Créditos limitados (1 a 5) ALTER TABLE CURSESSMODIFICE (CRÉDITOS RESTIRAÇÃO CHK_CREDITS CHECK (créditos entre 1 e 5)); Garante que a coluna de créditos na tabela de cursos aceite apenas valores entre 1 e 5. 5. Selecione com funções – maiúsculas e comprimento do email Selecione Nome, Upper (Nome) como Uppercase_name, Length (email) como email_lengthfrom estudantes; Exibe o nome de cada aluno, o nome deles em maiúsculas e a duração do endereço de e -mail. 6. Selecione a contagemComo total_students de estudantes; Encontra o número médio de créditos em todos os cursos e o número total de estudantes. 7. Junte -se a operação – aluno com cursos Selecione S.Name como Student_Name, C.CourSename, e.GradeFrom Students SJOIN As matrículas e no S.Studentid = E. Mostra a lista de estudantes, juntamente com os cursos em que estão matriculados e suas notas. 8. Agrupe com os estudantes por Departamento Selecione Departamento, Count () como Student_Count do StudentGroup by Dept tendo Count ()> 1; Grupos de estudantes por departamento e exibem apenas departamentos com mais de 1 aluno. 9. Ver – StudentCourSView Crie ou substitua a visualização do StudentCourSView Assellect s.name como StudentName, C.CourSename, e.GradeFrom Students Sjoin As matrículas e no S.StudentID = e.StudentIdJoin Courses C em E.CourendId = C.CourseId; Cria uma visão que mostra nomes dos alunos, seus cursos e notas matriculadas. 10. Procedimento armazenado – UpdateGrade Crie ou substitua o procedimento UpdateGrade (p_studentId em número, p_courseId em número, p_newgrade em char) AsbeginUpdate inscritos no grau = p_newgradewhere StudentId = p_studentid e curso = p_coured; compromet; end; end; Este procedimento atualiza a nota de um aluno na tabela de inscrições quando recebeu StudentID, CourseId e a nova nota.
Fonte
Publicar comentário