SlideShare una empresa de Scribd logo
1 de 19
Descargar para leer sin conexión
UNIVERSIDAD NACIONAL ABIERTA
VICERRECTORADO ACADÉMICO
AREA: INGENIERÍA
TRABAJO PRÁCTICO Nro. 3
ASIGNATURA: Base de Datos
CÓDIGO: 311
FECHA DE ENTREGA: 23-03-2024
NOMBRE DEL ESTUDIANTE: Jaidary Coromoto Mejía la Cruz
CÉDULA DE IDENTIDAD: 26.881.784
CORREO ELECTRÓNICO: jaidarymejia30@gmail.com
TELÉFONO: 0424-7818855
CENTRO LOCAL: Trujillo
UNIDAD DE APOYO: Boconó
CARRERA: 236
RESULTADOS DE CORRECCIÓN:
OBJ. N.º III.3
0:NL 1: L
INTRODUCCION
En el mundo de la gestión de bases de datos relacionales, SQL (Structured Query Language)
es un lenguaje estándar utilizado para realizar diversas operaciones, incluida la creación de bases
de datos. La creación de una base de datos en SQL implica definir su esquema, que incluye la
especificación de tablas, columnas y restricciones. La definición del esquema de una base de datos
en SQL implica la creación de tablas y la especificación de las relaciones entre ellas. Esto se logra
mediante la declaración de columnas y la asignación de claves primarias y externas para establecer
relaciones entre las tablas.
Por consiguiente, una vez definido el esquema de la base de datos, se pueden insertar
registros en las tablas para almacenar datos. Esto se logra mediante la instrucción INSERT INTO,
que permite agregar filas de datos a una tabla específica. Las consultas en SQL se utilizan para
recuperar datos de una base de datos. Esto se logra mediante la instrucción SELECT, que permite
seleccionar columnas específicas de una o más tablas, filtrar resultados con condiciones y ordenar
los datos según criterios específicos.
Por otra parte, las restricciones en SQL se utilizan para imponer reglas o condiciones en los
datos almacenados en la base de datos. Esto incluye restricciones de integridad, como claves
primarias y externas, así como restricciones de valores permitidos en columnas específicas. La
agregación y la agrupación de datos en SQL se utilizan para realizar cálculos sobre conjuntos de
datos y resumir los resultados. Esto se logra mediante funciones de agregación como COUNT, SUM,
AVG, MAX y MIN, así como la agrupación de filas de datos utilizando la cláusula GROUP BY.
Finalmente, el ordenamiento y el filtrado de resultados en SQL se utilizan para organizar y
limitar los datos recuperados por una consulta. Esto se logra mediante la cláusula ORDER BY para
ordenar los resultados según una o más columnas y la cláusula WHERE para filtrar filas basadas en
condiciones específicas.
En resumen, SQL es un lenguaje poderoso y versátil que permite gestionar eficazmente
bases de datos relacionales mediante la creación de esquemas, la manipulación de datos y la
realización de consultas avanzadas para obtener información útil.
TABLA DE CONTENIDOS
INTRODUCCION.................................................................................................................................................................. 2
ESPECIFICACIONES DEL TRABAJO PRÁCTICO No.3...............................................................................................4
CREAR LA B.D LLAMADA COLEGIO...............................................................................................................................9
CREAR LAS TABLAS PRESENTADAS........................................................................................................................... 9
INSERTAR LOS REGISTROS EN LAS TABLAS PRESENTADAS...........................................................................11
CONSULTAS EN LA B.D...................................................................................................................................................15
BIBLIOGRAFIA....................................................................................................................................................................19
ESPECIFICACIONES DEL TRABAJO PRÁCTICO No.3
En este proyecto, se creará una B.D. relacional, llamada Colegio con sus respectivas tablas
y se realizaran consultas simples, practicando los comandos más utilizados en el modelo SQL.
Dadas las siguientes tablas:
Grados
Numero nombre tipo inicio fin
1 Primero Semestre 2019-03-05 2019-09-05
2 Segundo Semestre 2019-03-05 2019-09-05
3 Tercero Semestre 2019-03-05 2019-09-05
4 Cuarto Semestre 2019-03-05 2019-09-05
5 Quinto Semestre 2019-03-05 2019-09-05
Secciones
Sección turno id_coordinador id_grado
"A" "Matutino" 1 1
"B" "Matutino" 1 1
"C" "Matutino" 1 1
"A" "Matutino" 1 2
"B" "Matutino" 1 2
"A" "Matutino" 1 3
"A" "Matutino" 1 4
"A" "Matutino" 1 5
Materias
NombreMateria Clave.id id_maestro
Física I 009 1
Física II 009 1
Física III 009 1
Matemática I 009 2
Matemática II 009 2
Matemática III 009 2
Química I 009 3
Química II 009 3
Química III 009 3
Biología I 009 4
Biología II 009 4
Biología III 009 4
Historia I 009 5
Historia II 009 5
Historia III 009 5
Geografía I 009 6
Geografía II 009 6
Geografía III 009 6
Artes I 009 7
Artes II 009 7
Artes III 009 7
Inglés I 009 8
Inglés II 009 8
Inglés III 009 8
Estudiantes
IdEstudiante Nombre Grad
o
Sección id_maestro Fecha de Inscripción
E11 Jesús García 1 "A" 1 4-2-2019
E12 Carolina Ramírez 1 "B" 1 5-2-2019
E13 Homero Garces 1 "C" 1 6-2-2019
E21 Julio Ferreira 2 "A" 2 7-2-2019
E22 Omaira Torres 2 "B" 2 8-2-2019
E31 Luis León 3 "A" 3 11-2-2019
E41 Pedro Gutiérrez 4 "A" 4 12-2-2019
E51 José Guzmán 5 "A" 5 13-2-2019
Maestros
Id_Maestr
o
Nombre Grado Sección
1 Pablo Ortega 1 "A"
1 Pablo Ortega 1 "B"
1 Pablo Ortega 1 "C"
1 Julio Ferreira 2 "A"
2 Carlos Acosta 2 "B"
3 María León 3 "A"
4 Juan Sánchez 4 "A"
5 Mirtha Bolívar 5 "A"
6 Jesús Castañeda 6 "A"
7 Cristóbal Alvarado 7 "A"
8 Marta González 8 "A"
Con las tablas anteriores establecer en forma analítica en código SQL, la B.D. relacional,
como sigue:
1. Crear la B.D. llamada Colegio.
2. Crear las tablas presentadas.
3. Insertar los registros en las tablas presentadas.
4. Realizar las siguientes consultas sobre la B.D. creada.
-Seleccionar a todos los maestros, excepto de las asignaturas de historia e inglés
-Seleccionar a todos los maestros, que dan primero, segundo y tercer grado
-Seleccionar a todos los estudiantes, de primero y segundo grado, mostrando el nombre, sección, id
del maestro.
-Seleccionar a todas las secciones por grado que existen.
-Seleccionar a los maestros correspondientes a los estudiantes, mostrando nombre del maestro,
nombre del estudiante, grado y sección.
-Seleccionar a todas las materias que se dictan que existen.
-Seleccionar a todas las materias por grado, mostrando nombre de materia, grado, nombre del
maestro por grado.
-Seleccionar a los alumnos inscritos entre 7/2/2019 y 13/2/2019, mostrando el nombre, apellido,
grado y fecha de inscripción. Ordenar por fecha ascendente.
-Seleccionar cuantos alumnos hay en cada grado, sólo mostrando el número del curso y su cantidad
de alumnos.
-Seleccionar las materias dictadas por los maestros mostrando, identificación de la materia nombre
y nombre del maestro
UND III, OBJ. I
Establecer, de forma coherente, el modelo SQL con definición del
esquema, restricciones, consultas y vistas.
.
CREAR LA B.D LLAMADA COLEGIO
SQL
CREATE DATABASE COLEGIO;
CREAR LAS TABLAS PRESENTADAS
-- Usar la base de datos COLEGIO
USE COLEGIO;
-- Crear la tabla Grados
CREATE TABLE Grados (
Numero INT PRIMARY KEY,
Nombre VARCHAR(50),
Tipo VARCHAR(50),
Inicio DATE,
Fin DATE
);
-- Crear la tabla Secciones
CREATE TABLE Secciones (
Seccion VARCHAR(10),
Turno VARCHAR(20),
Id_Coordinador INT,
Id_Grado INT,
FOREIGN KEY (Id_Grado) REFERENCES Grados(Numero)
);
-- Crear la tabla Materias
CREATE TABLE Materias (
NombreMateria VARCHAR(50) PRIMARY KEY,
Clave_Id INT,
Id_Maestro INT,
FOREIGN KEY (Id_Maestro) REFERENCES Maestros(Id_Maestro)
);
-- Crear la tabla Estudiantes
CREATE TABLE Estudiantes (
IdEstudiante VARCHAR(10) PRIMARY KEY,
Nombre VARCHAR(100),
Grado INT,
Seccion VARCHAR(10),
Id_Maestro INT,
Fecha_Inscripcion DATE,
FOREIGN KEY (Id_Maestro) REFERENCES Maestros(Id_Maestro)
);
-- Crear la tabla Maestros
CREATE TABLE Maestros (
Id_Maestro INT PRIMARY KEY,
Nombre VARCHAR(100),
Grado INT,
Seccion VARCHAR(10)
);
-- Añadir las relaciones de las tablas Estudiantes y Secciones
ALTER TABLE Estudiantes
ADD FOREIGN KEY (Seccion) REFERENCES Secciones(Seccion);
-- Añadir la relación de la tabla Secciones con Maestros
ALTER TABLE Secciones
ADD FOREIGN KEY (Id_Coordinador) REFERENCES Maestros(Id_Maestro);
INSERTAR LOS REGISTROS EN LAS TABLAS PRESENTADAS
-- Insertar registros en la tabla Grados
INSERT INTO Grados (Numero, Nombre, Tipo, Inicio, Fin)
VALUES
(1, 'Primero', 'Semestre', '2019-03-05', '2019-09-05'),
(2, 'Segundo', 'Semestre', '2019-03-05', '2019-09-05'),
(3, 'Tercero', 'Semestre', '2019-03-05', '2019-09-05'),
(4, 'Cuarto', 'Semestre', '2019-03-05', '2019-09-05'),
(5, 'Quinto', 'Semestre', '2019-03-05', '2019-09-05');
-- Insertar registros en la tabla Secciones
INSERT INTO Secciones (Seccion, Turno, Id_Coordinador, Id_Grado)
VALUES
('A', 'Matutino', 1, 1),
('B', 'Matutino', 1, 1),
('C', 'Matutino', 1, 1),
('A', 'Matutino', 1, 2),
('B', 'Matutino', 1, 2),
('A', 'Matutino', 1, 3),
('A', 'Matutino', 1, 4),
('A', 'Matutino', 1, 5);
-- Insertar registros en la tabla Materias
INSERT INTO Materias (NombreMateria, Clave_Id, Id_Maestro)
VALUES
('Física I', 9, 1),
('Física II', 9, 1),
('Física III', 9, 1),
('Matemática I', 9, 2),
('Matemática II', 9, 2),
('Matemática III', 9, 2),
('Química I', 9, 3),
('Química II', 9, 3),
('Química III', 9, 3),
('Biología I', 9, 4),
('Biología II', 9, 4),
('Biología III', 9, 4),
('Historia I', 9, 5),
('Historia II', 9, 5),
('Historia III', 9, 5),
('Geografía I', 9, 6),
('Geografía II', 9, 6),
('Geografía III', 9, 6),
('Artes I', 9, 7),
('Artes II', 9, 7),
('Artes III', 9, 7),
('Inglés I', 9, 8),
('Inglés II', 9, 8),
('Inglés III', 9, 8);
-- Insertar registros en la tabla Estudiantes
INSERT INTO Estudiantes (IdEstudiante, Nombre, Grado, Seccion, Id_Maestro,
Fecha_Inscripcion)
VALUES
('E11', 'Jesús García', 1, 'A', 1, '2019-02-04'),
('E12', 'Carolina Ramírez', 1, 'B', 1, '2019-02-05'),
('E13', 'Homero Garces', 1, 'C', 1, '2019-02-06'),
('E21', 'Julio Ferreira', 2, 'A', 2, '2019-02-07'),
('E22', 'Omaira Torres', 2, 'B', 2, '2019-02-08'),
('E31', 'Luis León', 3, 'A', 3, '2019-02-11'),
('E41', 'Pedro Gutiérrez', 4, 'A', 4, '2019-02-12'),
('E51', 'José Guzmán', 5, 'A', 5, '2019-02-13');
INSERT INTO Maestros (Id_Maestro, Nombre, Grado, Seccion)
VALUES
(1, 'Pablo Ortega', 1, 'A'),
(1, 'Pablo Ortega', 1, 'B'),
(1, 'Pablo Ortega', 1, 'C'),
(1, 'Julio Ferreira', 2, 'A'),
(2, 'Carlos Acosta', 2, 'B'),
(3, 'María León', 3, 'A'),
(4, 'Juan Sánchez', 4, 'A'),
(5, 'Mirtha Bolívar', 5, 'A'),
(6, 'Jesús Castañeda', 6, 'A'),
(7, 'Cristóbal Alvarado', 7, 'A'),
(8, 'Marta González', 8, 'A');
CONSULTAS EN LA B.D
-Seleccionar a todos los maestros, excepto de las asignaturas de historia e inglés
SELECT *
FROM Maestros
WHERE Grado NOT IN (SELECT DISTINCT Grado FROM Materias WHERE NombreMateria
IN ('Historia I', 'Historia II', 'Historia III', 'Inglés I', 'Inglés II', 'Inglés III'));
Id_Maestro Nombre Grado Seccion
1
1
1
6
7
8
Pablo Ortega
Pablo Ortega
Pablo Ortega
Jesús Castañeda
Cristóbal Alvarado
Marta González
1
1
1
6
7
8
A
B
C
A
A
A
-Seleccionar a todos los maestros, que dan primero, segundo y tercer grado
SELECT DISTINCT m.Id_Maestro, m.Nombre
FROM Maestros m
JOIN Estudiantes e ON m.Id_Maestro = e.id_maestro
JOIN Grados g ON e.Grado = g.Numero
WHERE g.Numero IN (1, 2, 3);
-Seleccionar a todos los estudiantes, de primero y segundo grado, mostrando el nombre,
sección, id del maestro.
-Seleccionar a todas las secciones por grado que existen.
SELECT DISTINCT id_grado, Sección
FROM Secciones;
-Seleccionar a los maestros correspondientes a los estudiantes, mostrando nombre del
maestro, nombre del estudiante, grado y sección.
SELECT m.Nombre AS 'Nombre del Maestro', e.Nombre AS 'Nombre del Estudiante', e.Grado,
e.Sección
FROM Maestros m
JOIN Estudiantes e ON m.id_maestro = e.id_maestro;
-Seleccionar a todas las materias que se dictan que existen.
SELECT DISTINCT NombreMateria
SELECT e.Nombre, e.Sección, e.id_maestro
FROM Estudiantes e
JOIN Grados g ON e.Grado = g.Numero
WHERE g.Numero IN (1, 2);
FROM Materias;
-Seleccionar a todas las materias por grado, mostrando nombre de materia, grado,
nombre del maestro por grado.
SELECT m.NombreMateria, g.Numero AS 'Grado', ma.Nombre AS 'Nombre del Maestro'
FROM Materias m
JOIN Grados g ON m.id = g.Numero
JOIN Maestros ma ON m.id_maestro = ma.Id_Maestro;
-Seleccionar a los alumnos inscritos entre 7/2/2019 y 13/2/2019, mostrando el nombre,
apellido, grado y fecha de inscripción. Ordenar por fecha ascendente.
SELECT m.NombreMateria, g.Numero AS 'Grado', ma.Nombre AS 'Nombre del Maestro'
FROM Materias m
JOIN Grados g ON m.id = g.Numero
JOIN Maestros ma ON m.id_maestro = ma.Id_Maestro;
-Seleccionar cuantos alumnos hay en cada grado, sólo mostrando el número del curso y
su cantidad de alumnos.
SELECT Grado, COUNT(*) AS 'Cantidad de Alumnos'
FROM Estudiantes
GROUP BY Grado;
-Seleccionar las materias dictadas por los maestros mostrando, identificación de la
materia nombre y nombre del maestro
SELECT m.NombreMateria, ma.Nombre AS 'Nombre del Maestro'
FROM Materias m
JOIN Maestros ma ON m.id_maestro = ma.Id_Maestro;
Recomendaciones básicas para la creación y gestión de bases de datos en SQL:
1. Planificación antes de comenzar: Antes de crear una base de datos, se debe planificar su
estructura, los tipos de datos que necesitarás, las relaciones entre las tablas y cualquier
restricción necesaria.
2. Utilizar nombres descriptivos: Los nombres descriptivos para las tablas, columnas, claves
primarias, claves foráneas y cualquier otro objeto de base de datos para facilitar la comprensión
y el mantenimiento de la base de datos.
3. Normalizar la base de datos: Se aplican los principios de normalización para reducir la
redundancia de datos y garantizar la integridad de los datos. Esto ayuda a evitar problemas
como la actualización anómala y la inconsistencia de datos.
4. Establecer claves primarias y claves foráneas: Definir claves primarias para identificar de
forma única cada registro en una tabla y claves foráneas para establecer relaciones entre las
tablas. Esto asegurará la integridad referencial de la base de datos.
5. Utilizar restricciones de integridad: Las restricciones de integridad, como restricciones NOT
NULL, UNIQUE, DEFAULT y CHECK, garantizan la validez y consistencia de los datos
almacenados en la base de datos.
6. Realizar copias de seguridad regularmente: Las copias de seguridad de una base de datos
protegen los datos contra la pérdida accidental, el daño o la corrupción. También es
recomendable probar regularmente la restauración de las copias de seguridad para asegurarse
de que funcionen correctamente.
BIBLIOGRAFIA
1. Platzi. (s.f.). Curso de Bases de Datos. Recuperado de https://platzi.com/cursos/bd/
2. Ramez, E. y Shamkant, N. (2007). Fundamentos de Sistemas de bases de datos, 5ª
Edición, PEARSON EDUCACIÓN S.A.: Madrid pp. 205-243

Más contenido relacionado

Similar a 311_TP3_2024-1_JaidaryMejia_26881784.pdf

actividad_2_grupogestionexamenes_bd2_2021_SQLserver.docx
actividad_2_grupogestionexamenes_bd2_2021_SQLserver.docxactividad_2_grupogestionexamenes_bd2_2021_SQLserver.docx
actividad_2_grupogestionexamenes_bd2_2021_SQLserver.docxSERGIOLUSARRIETAGONZ
 
Base de Datos Academia con LibreOffice Base
Base de Datos Academia con LibreOffice BaseBase de Datos Academia con LibreOffice Base
Base de Datos Academia con LibreOffice BaseTernera Wellington
 
Mi primera base de datos hecha en LibreOffice
Mi primera base de datos hecha en LibreOfficeMi primera base de datos hecha en LibreOffice
Mi primera base de datos hecha en LibreOfficenyabyte
 
Recuperacion de yola
Recuperacion de yolaRecuperacion de yola
Recuperacion de yolacathya56
 
Plantilla con-normas-icontec (2)
Plantilla con-normas-icontec (2)Plantilla con-normas-icontec (2)
Plantilla con-normas-icontec (2)Juan David Naranjo
 
Ejercicio Academia LibreOffice Base
Ejercicio Academia LibreOffice BaseEjercicio Academia LibreOffice Base
Ejercicio Academia LibreOffice BaseYack13
 
Recuperacion de yola
Recuperacion de yolaRecuperacion de yola
Recuperacion de yolaIveth_Gaspar
 
Modelo entidad relación BD Matriculas
Modelo entidad relación BD MatriculasModelo entidad relación BD Matriculas
Modelo entidad relación BD MatriculasEmerson Garay
 
Plantilla icontec base de datos relacional
Plantilla icontec base de datos relacionalPlantilla icontec base de datos relacional
Plantilla icontec base de datos relacionalBrayan Peñuela
 
Mi plantilla con-normas-icontec (1) (1) (2) (2)
Mi plantilla con-normas-icontec (1) (1) (2) (2)Mi plantilla con-normas-icontec (1) (1) (2) (2)
Mi plantilla con-normas-icontec (1) (1) (2) (2)Santiago Cortes
 

Similar a 311_TP3_2024-1_JaidaryMejia_26881784.pdf (20)

actividad_2_grupogestionexamenes_bd2_2021_SQLserver.docx
actividad_2_grupogestionexamenes_bd2_2021_SQLserver.docxactividad_2_grupogestionexamenes_bd2_2021_SQLserver.docx
actividad_2_grupogestionexamenes_bd2_2021_SQLserver.docx
 
Rc balvina guerrero
Rc balvina guerreroRc balvina guerrero
Rc balvina guerrero
 
Base de Datos Academia con LibreOffice Base
Base de Datos Academia con LibreOffice BaseBase de Datos Academia con LibreOffice Base
Base de Datos Academia con LibreOffice Base
 
Mi primera base de datos hecha en LibreOffice
Mi primera base de datos hecha en LibreOfficeMi primera base de datos hecha en LibreOffice
Mi primera base de datos hecha en LibreOffice
 
Plantilla con normas icontec1
Plantilla con normas icontec1Plantilla con normas icontec1
Plantilla con normas icontec1
 
Plantilla con-normas-icontec
Plantilla con-normas-icontec Plantilla con-normas-icontec
Plantilla con-normas-icontec
 
Diseño base de datos
Diseño base de datosDiseño base de datos
Diseño base de datos
 
Recuperacion de yola
Recuperacion de yolaRecuperacion de yola
Recuperacion de yola
 
Plantilla con-normas-icontec 3
Plantilla con-normas-icontec 3Plantilla con-normas-icontec 3
Plantilla con-normas-icontec 3
 
Plantilla con-normas-icontec
Plantilla con-normas-icontecPlantilla con-normas-icontec
Plantilla con-normas-icontec
 
Plantilla con-normas-icontec (2)
Plantilla con-normas-icontec (2)Plantilla con-normas-icontec (2)
Plantilla con-normas-icontec (2)
 
Consultas2
Consultas2Consultas2
Consultas2
 
Ejercicio Academia LibreOffice Base
Ejercicio Academia LibreOffice BaseEjercicio Academia LibreOffice Base
Ejercicio Academia LibreOffice Base
 
Recuperacion de yola
Recuperacion de yolaRecuperacion de yola
Recuperacion de yola
 
trabajo
trabajotrabajo
trabajo
 
Modelo entidad relación BD Matriculas
Modelo entidad relación BD MatriculasModelo entidad relación BD Matriculas
Modelo entidad relación BD Matriculas
 
Plantilla icontec base de datos relacional
Plantilla icontec base de datos relacionalPlantilla icontec base de datos relacional
Plantilla icontec base de datos relacional
 
Acess
AcessAcess
Acess
 
Mi plantilla con-normas-icontec (1) (1) (2) (2)
Mi plantilla con-normas-icontec (1) (1) (2) (2)Mi plantilla con-normas-icontec (1) (1) (2) (2)
Mi plantilla con-normas-icontec (1) (1) (2) (2)
 
Mi primera base de datos
Mi primera base de datosMi primera base de datos
Mi primera base de datos
 

Último

Sesión de Clase A dde sistemas de riego y otras obras
Sesión de Clase A dde sistemas de riego y otras obrasSesión de Clase A dde sistemas de riego y otras obras
Sesión de Clase A dde sistemas de riego y otras obrasBildStrify1
 
TIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZ
TIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZTIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZ
TIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZvarichard
 
Trabajo de cristalografia. año 2024 mes de mayo
Trabajo de cristalografia. año 2024 mes de mayoTrabajo de cristalografia. año 2024 mes de mayo
Trabajo de cristalografia. año 2024 mes de mayoAntonioCardenas58
 
DIAGRAMAS PID automatizacion y control.ppt
DIAGRAMAS PID automatizacion y control.pptDIAGRAMAS PID automatizacion y control.ppt
DIAGRAMAS PID automatizacion y control.pptalisonsarmiento4
 
647913404-06-Partes-principales-de-las-Perforadoras-manuales-1.pdf
647913404-06-Partes-principales-de-las-Perforadoras-manuales-1.pdf647913404-06-Partes-principales-de-las-Perforadoras-manuales-1.pdf
647913404-06-Partes-principales-de-las-Perforadoras-manuales-1.pdfMirkaCBauer
 
6.1-Proclamación de la II República, la Constitución y el bienio reformista-L...
6.1-Proclamación de la II República, la Constitución y el bienio reformista-L...6.1-Proclamación de la II República, la Constitución y el bienio reformista-L...
6.1-Proclamación de la II República, la Constitución y el bienio reformista-L...jose880240
 
PRACTICAS_DE_AUTOMATIZACION_industrial (1).pdf
PRACTICAS_DE_AUTOMATIZACION_industrial (1).pdfPRACTICAS_DE_AUTOMATIZACION_industrial (1).pdf
PRACTICAS_DE_AUTOMATIZACION_industrial (1).pdfjorge477728
 
REAJUSTE DE PRECIOS EN LOS CONTRATOS ADMINISTRATIVOS DE OBRA PUBLICA PACTADOS...
REAJUSTE DE PRECIOS EN LOS CONTRATOS ADMINISTRATIVOS DE OBRA PUBLICA PACTADOS...REAJUSTE DE PRECIOS EN LOS CONTRATOS ADMINISTRATIVOS DE OBRA PUBLICA PACTADOS...
REAJUSTE DE PRECIOS EN LOS CONTRATOS ADMINISTRATIVOS DE OBRA PUBLICA PACTADOS...p39961945
 
CONCEPTOS BASICOS DE ROBOTICA, CLASES DE ROBOTS
CONCEPTOS BASICOS DE ROBOTICA, CLASES DE ROBOTSCONCEPTOS BASICOS DE ROBOTICA, CLASES DE ROBOTS
CONCEPTOS BASICOS DE ROBOTICA, CLASES DE ROBOTSrobinarielabellafern
 
Semana 1 - Introduccion - Fluidos - Unidades.pptx
Semana 1 - Introduccion - Fluidos - Unidades.pptxSemana 1 - Introduccion - Fluidos - Unidades.pptx
Semana 1 - Introduccion - Fluidos - Unidades.pptxJulio Lovon
 
DIFERENCIA DE COMPRESION Y TENSION EN UN CUERPO
DIFERENCIA DE COMPRESION Y TENSION EN UN CUERPODIFERENCIA DE COMPRESION Y TENSION EN UN CUERPO
DIFERENCIA DE COMPRESION Y TENSION EN UN CUERPOSegundo Silva Maguiña
 
S01.s1 - Clasificación de las Industrias.pdf
S01.s1 - Clasificación de las Industrias.pdfS01.s1 - Clasificación de las Industrias.pdf
S01.s1 - Clasificación de las Industrias.pdfSalomeRunco
 
ESFUERZO EN VIGAS SESIÓN 5 PROBLEMA RESUELTOS.pdf
ESFUERZO EN VIGAS SESIÓN 5 PROBLEMA RESUELTOS.pdfESFUERZO EN VIGAS SESIÓN 5 PROBLEMA RESUELTOS.pdf
ESFUERZO EN VIGAS SESIÓN 5 PROBLEMA RESUELTOS.pdfSegundo Silva Maguiña
 
Inmunología AMIR 14va EdiciónNM,NLKKJHKLJHKJLBHLKJH
Inmunología AMIR 14va EdiciónNM,NLKKJHKLJHKJLBHLKJHInmunología AMIR 14va EdiciónNM,NLKKJHKLJHKJLBHLKJH
Inmunología AMIR 14va EdiciónNM,NLKKJHKLJHKJLBHLKJHVivafornai
 
TYPP_Industrialización del Petróleo.pptx
TYPP_Industrialización del Petróleo.pptxTYPP_Industrialización del Petróleo.pptx
TYPP_Industrialización del Petróleo.pptxLilibethBallesteros1
 
subestaciones electricas, distribucion de energia
subestaciones electricas, distribucion de energiasubestaciones electricas, distribucion de energia
subestaciones electricas, distribucion de energiazaydaescalona
 
slideshare.vpdfs.com_sensores-magneticos-controles-pptx.pdf
slideshare.vpdfs.com_sensores-magneticos-controles-pptx.pdfslideshare.vpdfs.com_sensores-magneticos-controles-pptx.pdf
slideshare.vpdfs.com_sensores-magneticos-controles-pptx.pdfWaldo Eber Melendez Garro
 
UNIDAD III Esquemas de comunicacion pptx
UNIDAD III Esquemas de comunicacion pptxUNIDAD III Esquemas de comunicacion pptx
UNIDAD III Esquemas de comunicacion pptxElybe Hernandez
 
REGLA DE PROBABILIDADES Y REGLA DE BAYES.pptx
REGLA DE PROBABILIDADES  Y REGLA DE BAYES.pptxREGLA DE PROBABILIDADES  Y REGLA DE BAYES.pptx
REGLA DE PROBABILIDADES Y REGLA DE BAYES.pptxJhonLeon59
 

Último (20)

Sesión de Clase A dde sistemas de riego y otras obras
Sesión de Clase A dde sistemas de riego y otras obrasSesión de Clase A dde sistemas de riego y otras obras
Sesión de Clase A dde sistemas de riego y otras obras
 
TIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZ
TIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZTIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZ
TIPOS DE BASTIDORES Y CARROCERIA EN LA INDUSTRIA AUTOMOTRIZ
 
Convocatoria de Becas Caja de Ingenieros_UOC 2024-25
Convocatoria de Becas Caja de Ingenieros_UOC 2024-25Convocatoria de Becas Caja de Ingenieros_UOC 2024-25
Convocatoria de Becas Caja de Ingenieros_UOC 2024-25
 
Trabajo de cristalografia. año 2024 mes de mayo
Trabajo de cristalografia. año 2024 mes de mayoTrabajo de cristalografia. año 2024 mes de mayo
Trabajo de cristalografia. año 2024 mes de mayo
 
DIAGRAMAS PID automatizacion y control.ppt
DIAGRAMAS PID automatizacion y control.pptDIAGRAMAS PID automatizacion y control.ppt
DIAGRAMAS PID automatizacion y control.ppt
 
647913404-06-Partes-principales-de-las-Perforadoras-manuales-1.pdf
647913404-06-Partes-principales-de-las-Perforadoras-manuales-1.pdf647913404-06-Partes-principales-de-las-Perforadoras-manuales-1.pdf
647913404-06-Partes-principales-de-las-Perforadoras-manuales-1.pdf
 
6.1-Proclamación de la II República, la Constitución y el bienio reformista-L...
6.1-Proclamación de la II República, la Constitución y el bienio reformista-L...6.1-Proclamación de la II República, la Constitución y el bienio reformista-L...
6.1-Proclamación de la II República, la Constitución y el bienio reformista-L...
 
PRACTICAS_DE_AUTOMATIZACION_industrial (1).pdf
PRACTICAS_DE_AUTOMATIZACION_industrial (1).pdfPRACTICAS_DE_AUTOMATIZACION_industrial (1).pdf
PRACTICAS_DE_AUTOMATIZACION_industrial (1).pdf
 
REAJUSTE DE PRECIOS EN LOS CONTRATOS ADMINISTRATIVOS DE OBRA PUBLICA PACTADOS...
REAJUSTE DE PRECIOS EN LOS CONTRATOS ADMINISTRATIVOS DE OBRA PUBLICA PACTADOS...REAJUSTE DE PRECIOS EN LOS CONTRATOS ADMINISTRATIVOS DE OBRA PUBLICA PACTADOS...
REAJUSTE DE PRECIOS EN LOS CONTRATOS ADMINISTRATIVOS DE OBRA PUBLICA PACTADOS...
 
CONCEPTOS BASICOS DE ROBOTICA, CLASES DE ROBOTS
CONCEPTOS BASICOS DE ROBOTICA, CLASES DE ROBOTSCONCEPTOS BASICOS DE ROBOTICA, CLASES DE ROBOTS
CONCEPTOS BASICOS DE ROBOTICA, CLASES DE ROBOTS
 
Semana 1 - Introduccion - Fluidos - Unidades.pptx
Semana 1 - Introduccion - Fluidos - Unidades.pptxSemana 1 - Introduccion - Fluidos - Unidades.pptx
Semana 1 - Introduccion - Fluidos - Unidades.pptx
 
DIFERENCIA DE COMPRESION Y TENSION EN UN CUERPO
DIFERENCIA DE COMPRESION Y TENSION EN UN CUERPODIFERENCIA DE COMPRESION Y TENSION EN UN CUERPO
DIFERENCIA DE COMPRESION Y TENSION EN UN CUERPO
 
S01.s1 - Clasificación de las Industrias.pdf
S01.s1 - Clasificación de las Industrias.pdfS01.s1 - Clasificación de las Industrias.pdf
S01.s1 - Clasificación de las Industrias.pdf
 
ESFUERZO EN VIGAS SESIÓN 5 PROBLEMA RESUELTOS.pdf
ESFUERZO EN VIGAS SESIÓN 5 PROBLEMA RESUELTOS.pdfESFUERZO EN VIGAS SESIÓN 5 PROBLEMA RESUELTOS.pdf
ESFUERZO EN VIGAS SESIÓN 5 PROBLEMA RESUELTOS.pdf
 
Inmunología AMIR 14va EdiciónNM,NLKKJHKLJHKJLBHLKJH
Inmunología AMIR 14va EdiciónNM,NLKKJHKLJHKJLBHLKJHInmunología AMIR 14va EdiciónNM,NLKKJHKLJHKJLBHLKJH
Inmunología AMIR 14va EdiciónNM,NLKKJHKLJHKJLBHLKJH
 
TYPP_Industrialización del Petróleo.pptx
TYPP_Industrialización del Petróleo.pptxTYPP_Industrialización del Petróleo.pptx
TYPP_Industrialización del Petróleo.pptx
 
subestaciones electricas, distribucion de energia
subestaciones electricas, distribucion de energiasubestaciones electricas, distribucion de energia
subestaciones electricas, distribucion de energia
 
slideshare.vpdfs.com_sensores-magneticos-controles-pptx.pdf
slideshare.vpdfs.com_sensores-magneticos-controles-pptx.pdfslideshare.vpdfs.com_sensores-magneticos-controles-pptx.pdf
slideshare.vpdfs.com_sensores-magneticos-controles-pptx.pdf
 
UNIDAD III Esquemas de comunicacion pptx
UNIDAD III Esquemas de comunicacion pptxUNIDAD III Esquemas de comunicacion pptx
UNIDAD III Esquemas de comunicacion pptx
 
REGLA DE PROBABILIDADES Y REGLA DE BAYES.pptx
REGLA DE PROBABILIDADES  Y REGLA DE BAYES.pptxREGLA DE PROBABILIDADES  Y REGLA DE BAYES.pptx
REGLA DE PROBABILIDADES Y REGLA DE BAYES.pptx
 

311_TP3_2024-1_JaidaryMejia_26881784.pdf

  • 1. UNIVERSIDAD NACIONAL ABIERTA VICERRECTORADO ACADÉMICO AREA: INGENIERÍA TRABAJO PRÁCTICO Nro. 3 ASIGNATURA: Base de Datos CÓDIGO: 311 FECHA DE ENTREGA: 23-03-2024 NOMBRE DEL ESTUDIANTE: Jaidary Coromoto Mejía la Cruz CÉDULA DE IDENTIDAD: 26.881.784 CORREO ELECTRÓNICO: jaidarymejia30@gmail.com TELÉFONO: 0424-7818855 CENTRO LOCAL: Trujillo UNIDAD DE APOYO: Boconó CARRERA: 236 RESULTADOS DE CORRECCIÓN: OBJ. N.º III.3 0:NL 1: L
  • 2. INTRODUCCION En el mundo de la gestión de bases de datos relacionales, SQL (Structured Query Language) es un lenguaje estándar utilizado para realizar diversas operaciones, incluida la creación de bases de datos. La creación de una base de datos en SQL implica definir su esquema, que incluye la especificación de tablas, columnas y restricciones. La definición del esquema de una base de datos en SQL implica la creación de tablas y la especificación de las relaciones entre ellas. Esto se logra mediante la declaración de columnas y la asignación de claves primarias y externas para establecer relaciones entre las tablas. Por consiguiente, una vez definido el esquema de la base de datos, se pueden insertar registros en las tablas para almacenar datos. Esto se logra mediante la instrucción INSERT INTO, que permite agregar filas de datos a una tabla específica. Las consultas en SQL se utilizan para recuperar datos de una base de datos. Esto se logra mediante la instrucción SELECT, que permite seleccionar columnas específicas de una o más tablas, filtrar resultados con condiciones y ordenar los datos según criterios específicos. Por otra parte, las restricciones en SQL se utilizan para imponer reglas o condiciones en los datos almacenados en la base de datos. Esto incluye restricciones de integridad, como claves primarias y externas, así como restricciones de valores permitidos en columnas específicas. La agregación y la agrupación de datos en SQL se utilizan para realizar cálculos sobre conjuntos de datos y resumir los resultados. Esto se logra mediante funciones de agregación como COUNT, SUM, AVG, MAX y MIN, así como la agrupación de filas de datos utilizando la cláusula GROUP BY. Finalmente, el ordenamiento y el filtrado de resultados en SQL se utilizan para organizar y limitar los datos recuperados por una consulta. Esto se logra mediante la cláusula ORDER BY para ordenar los resultados según una o más columnas y la cláusula WHERE para filtrar filas basadas en condiciones específicas. En resumen, SQL es un lenguaje poderoso y versátil que permite gestionar eficazmente bases de datos relacionales mediante la creación de esquemas, la manipulación de datos y la realización de consultas avanzadas para obtener información útil.
  • 3. TABLA DE CONTENIDOS INTRODUCCION.................................................................................................................................................................. 2 ESPECIFICACIONES DEL TRABAJO PRÁCTICO No.3...............................................................................................4 CREAR LA B.D LLAMADA COLEGIO...............................................................................................................................9 CREAR LAS TABLAS PRESENTADAS........................................................................................................................... 9 INSERTAR LOS REGISTROS EN LAS TABLAS PRESENTADAS...........................................................................11 CONSULTAS EN LA B.D...................................................................................................................................................15 BIBLIOGRAFIA....................................................................................................................................................................19
  • 4. ESPECIFICACIONES DEL TRABAJO PRÁCTICO No.3 En este proyecto, se creará una B.D. relacional, llamada Colegio con sus respectivas tablas y se realizaran consultas simples, practicando los comandos más utilizados en el modelo SQL. Dadas las siguientes tablas: Grados Numero nombre tipo inicio fin 1 Primero Semestre 2019-03-05 2019-09-05 2 Segundo Semestre 2019-03-05 2019-09-05 3 Tercero Semestre 2019-03-05 2019-09-05 4 Cuarto Semestre 2019-03-05 2019-09-05 5 Quinto Semestre 2019-03-05 2019-09-05 Secciones Sección turno id_coordinador id_grado "A" "Matutino" 1 1 "B" "Matutino" 1 1 "C" "Matutino" 1 1 "A" "Matutino" 1 2 "B" "Matutino" 1 2 "A" "Matutino" 1 3 "A" "Matutino" 1 4 "A" "Matutino" 1 5
  • 5. Materias NombreMateria Clave.id id_maestro Física I 009 1 Física II 009 1 Física III 009 1 Matemática I 009 2 Matemática II 009 2 Matemática III 009 2 Química I 009 3 Química II 009 3 Química III 009 3 Biología I 009 4 Biología II 009 4 Biología III 009 4 Historia I 009 5 Historia II 009 5 Historia III 009 5 Geografía I 009 6 Geografía II 009 6 Geografía III 009 6 Artes I 009 7 Artes II 009 7 Artes III 009 7
  • 6. Inglés I 009 8 Inglés II 009 8 Inglés III 009 8 Estudiantes IdEstudiante Nombre Grad o Sección id_maestro Fecha de Inscripción E11 Jesús García 1 "A" 1 4-2-2019 E12 Carolina Ramírez 1 "B" 1 5-2-2019 E13 Homero Garces 1 "C" 1 6-2-2019 E21 Julio Ferreira 2 "A" 2 7-2-2019 E22 Omaira Torres 2 "B" 2 8-2-2019 E31 Luis León 3 "A" 3 11-2-2019 E41 Pedro Gutiérrez 4 "A" 4 12-2-2019 E51 José Guzmán 5 "A" 5 13-2-2019 Maestros Id_Maestr o Nombre Grado Sección 1 Pablo Ortega 1 "A" 1 Pablo Ortega 1 "B" 1 Pablo Ortega 1 "C" 1 Julio Ferreira 2 "A"
  • 7. 2 Carlos Acosta 2 "B" 3 María León 3 "A" 4 Juan Sánchez 4 "A" 5 Mirtha Bolívar 5 "A" 6 Jesús Castañeda 6 "A" 7 Cristóbal Alvarado 7 "A" 8 Marta González 8 "A"
  • 8. Con las tablas anteriores establecer en forma analítica en código SQL, la B.D. relacional, como sigue: 1. Crear la B.D. llamada Colegio. 2. Crear las tablas presentadas. 3. Insertar los registros en las tablas presentadas. 4. Realizar las siguientes consultas sobre la B.D. creada. -Seleccionar a todos los maestros, excepto de las asignaturas de historia e inglés -Seleccionar a todos los maestros, que dan primero, segundo y tercer grado -Seleccionar a todos los estudiantes, de primero y segundo grado, mostrando el nombre, sección, id del maestro. -Seleccionar a todas las secciones por grado que existen. -Seleccionar a los maestros correspondientes a los estudiantes, mostrando nombre del maestro, nombre del estudiante, grado y sección. -Seleccionar a todas las materias que se dictan que existen. -Seleccionar a todas las materias por grado, mostrando nombre de materia, grado, nombre del maestro por grado. -Seleccionar a los alumnos inscritos entre 7/2/2019 y 13/2/2019, mostrando el nombre, apellido, grado y fecha de inscripción. Ordenar por fecha ascendente. -Seleccionar cuantos alumnos hay en cada grado, sólo mostrando el número del curso y su cantidad de alumnos. -Seleccionar las materias dictadas por los maestros mostrando, identificación de la materia nombre y nombre del maestro UND III, OBJ. I Establecer, de forma coherente, el modelo SQL con definición del esquema, restricciones, consultas y vistas. .
  • 9. CREAR LA B.D LLAMADA COLEGIO SQL CREATE DATABASE COLEGIO; CREAR LAS TABLAS PRESENTADAS -- Usar la base de datos COLEGIO USE COLEGIO; -- Crear la tabla Grados CREATE TABLE Grados ( Numero INT PRIMARY KEY, Nombre VARCHAR(50), Tipo VARCHAR(50), Inicio DATE, Fin DATE ); -- Crear la tabla Secciones CREATE TABLE Secciones ( Seccion VARCHAR(10), Turno VARCHAR(20),
  • 10. Id_Coordinador INT, Id_Grado INT, FOREIGN KEY (Id_Grado) REFERENCES Grados(Numero) ); -- Crear la tabla Materias CREATE TABLE Materias ( NombreMateria VARCHAR(50) PRIMARY KEY, Clave_Id INT, Id_Maestro INT, FOREIGN KEY (Id_Maestro) REFERENCES Maestros(Id_Maestro) ); -- Crear la tabla Estudiantes CREATE TABLE Estudiantes ( IdEstudiante VARCHAR(10) PRIMARY KEY, Nombre VARCHAR(100), Grado INT, Seccion VARCHAR(10), Id_Maestro INT, Fecha_Inscripcion DATE, FOREIGN KEY (Id_Maestro) REFERENCES Maestros(Id_Maestro) );
  • 11. -- Crear la tabla Maestros CREATE TABLE Maestros ( Id_Maestro INT PRIMARY KEY, Nombre VARCHAR(100), Grado INT, Seccion VARCHAR(10) ); -- Añadir las relaciones de las tablas Estudiantes y Secciones ALTER TABLE Estudiantes ADD FOREIGN KEY (Seccion) REFERENCES Secciones(Seccion); -- Añadir la relación de la tabla Secciones con Maestros ALTER TABLE Secciones ADD FOREIGN KEY (Id_Coordinador) REFERENCES Maestros(Id_Maestro); INSERTAR LOS REGISTROS EN LAS TABLAS PRESENTADAS -- Insertar registros en la tabla Grados INSERT INTO Grados (Numero, Nombre, Tipo, Inicio, Fin) VALUES (1, 'Primero', 'Semestre', '2019-03-05', '2019-09-05'),
  • 12. (2, 'Segundo', 'Semestre', '2019-03-05', '2019-09-05'), (3, 'Tercero', 'Semestre', '2019-03-05', '2019-09-05'), (4, 'Cuarto', 'Semestre', '2019-03-05', '2019-09-05'), (5, 'Quinto', 'Semestre', '2019-03-05', '2019-09-05'); -- Insertar registros en la tabla Secciones INSERT INTO Secciones (Seccion, Turno, Id_Coordinador, Id_Grado) VALUES ('A', 'Matutino', 1, 1), ('B', 'Matutino', 1, 1), ('C', 'Matutino', 1, 1), ('A', 'Matutino', 1, 2), ('B', 'Matutino', 1, 2), ('A', 'Matutino', 1, 3), ('A', 'Matutino', 1, 4), ('A', 'Matutino', 1, 5); -- Insertar registros en la tabla Materias INSERT INTO Materias (NombreMateria, Clave_Id, Id_Maestro) VALUES ('Física I', 9, 1), ('Física II', 9, 1), ('Física III', 9, 1),
  • 13. ('Matemática I', 9, 2), ('Matemática II', 9, 2), ('Matemática III', 9, 2), ('Química I', 9, 3), ('Química II', 9, 3), ('Química III', 9, 3), ('Biología I', 9, 4), ('Biología II', 9, 4), ('Biología III', 9, 4), ('Historia I', 9, 5), ('Historia II', 9, 5), ('Historia III', 9, 5), ('Geografía I', 9, 6), ('Geografía II', 9, 6), ('Geografía III', 9, 6), ('Artes I', 9, 7), ('Artes II', 9, 7), ('Artes III', 9, 7), ('Inglés I', 9, 8), ('Inglés II', 9, 8), ('Inglés III', 9, 8); -- Insertar registros en la tabla Estudiantes INSERT INTO Estudiantes (IdEstudiante, Nombre, Grado, Seccion, Id_Maestro,
  • 14. Fecha_Inscripcion) VALUES ('E11', 'Jesús García', 1, 'A', 1, '2019-02-04'), ('E12', 'Carolina Ramírez', 1, 'B', 1, '2019-02-05'), ('E13', 'Homero Garces', 1, 'C', 1, '2019-02-06'), ('E21', 'Julio Ferreira', 2, 'A', 2, '2019-02-07'), ('E22', 'Omaira Torres', 2, 'B', 2, '2019-02-08'), ('E31', 'Luis León', 3, 'A', 3, '2019-02-11'), ('E41', 'Pedro Gutiérrez', 4, 'A', 4, '2019-02-12'), ('E51', 'José Guzmán', 5, 'A', 5, '2019-02-13'); INSERT INTO Maestros (Id_Maestro, Nombre, Grado, Seccion) VALUES (1, 'Pablo Ortega', 1, 'A'), (1, 'Pablo Ortega', 1, 'B'), (1, 'Pablo Ortega', 1, 'C'), (1, 'Julio Ferreira', 2, 'A'), (2, 'Carlos Acosta', 2, 'B'), (3, 'María León', 3, 'A'), (4, 'Juan Sánchez', 4, 'A'), (5, 'Mirtha Bolívar', 5, 'A'), (6, 'Jesús Castañeda', 6, 'A'), (7, 'Cristóbal Alvarado', 7, 'A'),
  • 15. (8, 'Marta González', 8, 'A'); CONSULTAS EN LA B.D -Seleccionar a todos los maestros, excepto de las asignaturas de historia e inglés SELECT * FROM Maestros WHERE Grado NOT IN (SELECT DISTINCT Grado FROM Materias WHERE NombreMateria IN ('Historia I', 'Historia II', 'Historia III', 'Inglés I', 'Inglés II', 'Inglés III')); Id_Maestro Nombre Grado Seccion 1 1 1 6 7 8 Pablo Ortega Pablo Ortega Pablo Ortega Jesús Castañeda Cristóbal Alvarado Marta González 1 1 1 6 7 8 A B C A A A -Seleccionar a todos los maestros, que dan primero, segundo y tercer grado SELECT DISTINCT m.Id_Maestro, m.Nombre FROM Maestros m
  • 16. JOIN Estudiantes e ON m.Id_Maestro = e.id_maestro JOIN Grados g ON e.Grado = g.Numero WHERE g.Numero IN (1, 2, 3); -Seleccionar a todos los estudiantes, de primero y segundo grado, mostrando el nombre, sección, id del maestro. -Seleccionar a todas las secciones por grado que existen. SELECT DISTINCT id_grado, Sección FROM Secciones; -Seleccionar a los maestros correspondientes a los estudiantes, mostrando nombre del maestro, nombre del estudiante, grado y sección. SELECT m.Nombre AS 'Nombre del Maestro', e.Nombre AS 'Nombre del Estudiante', e.Grado, e.Sección FROM Maestros m JOIN Estudiantes e ON m.id_maestro = e.id_maestro; -Seleccionar a todas las materias que se dictan que existen. SELECT DISTINCT NombreMateria SELECT e.Nombre, e.Sección, e.id_maestro FROM Estudiantes e JOIN Grados g ON e.Grado = g.Numero WHERE g.Numero IN (1, 2);
  • 17. FROM Materias; -Seleccionar a todas las materias por grado, mostrando nombre de materia, grado, nombre del maestro por grado. SELECT m.NombreMateria, g.Numero AS 'Grado', ma.Nombre AS 'Nombre del Maestro' FROM Materias m JOIN Grados g ON m.id = g.Numero JOIN Maestros ma ON m.id_maestro = ma.Id_Maestro; -Seleccionar a los alumnos inscritos entre 7/2/2019 y 13/2/2019, mostrando el nombre, apellido, grado y fecha de inscripción. Ordenar por fecha ascendente. SELECT m.NombreMateria, g.Numero AS 'Grado', ma.Nombre AS 'Nombre del Maestro' FROM Materias m JOIN Grados g ON m.id = g.Numero JOIN Maestros ma ON m.id_maestro = ma.Id_Maestro; -Seleccionar cuantos alumnos hay en cada grado, sólo mostrando el número del curso y su cantidad de alumnos. SELECT Grado, COUNT(*) AS 'Cantidad de Alumnos' FROM Estudiantes GROUP BY Grado;
  • 18. -Seleccionar las materias dictadas por los maestros mostrando, identificación de la materia nombre y nombre del maestro SELECT m.NombreMateria, ma.Nombre AS 'Nombre del Maestro' FROM Materias m JOIN Maestros ma ON m.id_maestro = ma.Id_Maestro; Recomendaciones básicas para la creación y gestión de bases de datos en SQL: 1. Planificación antes de comenzar: Antes de crear una base de datos, se debe planificar su estructura, los tipos de datos que necesitarás, las relaciones entre las tablas y cualquier restricción necesaria. 2. Utilizar nombres descriptivos: Los nombres descriptivos para las tablas, columnas, claves primarias, claves foráneas y cualquier otro objeto de base de datos para facilitar la comprensión y el mantenimiento de la base de datos. 3. Normalizar la base de datos: Se aplican los principios de normalización para reducir la redundancia de datos y garantizar la integridad de los datos. Esto ayuda a evitar problemas como la actualización anómala y la inconsistencia de datos. 4. Establecer claves primarias y claves foráneas: Definir claves primarias para identificar de forma única cada registro en una tabla y claves foráneas para establecer relaciones entre las tablas. Esto asegurará la integridad referencial de la base de datos. 5. Utilizar restricciones de integridad: Las restricciones de integridad, como restricciones NOT NULL, UNIQUE, DEFAULT y CHECK, garantizan la validez y consistencia de los datos almacenados en la base de datos. 6. Realizar copias de seguridad regularmente: Las copias de seguridad de una base de datos protegen los datos contra la pérdida accidental, el daño o la corrupción. También es recomendable probar regularmente la restauración de las copias de seguridad para asegurarse de que funcionen correctamente.
  • 19. BIBLIOGRAFIA 1. Platzi. (s.f.). Curso de Bases de Datos. Recuperado de https://platzi.com/cursos/bd/ 2. Ramez, E. y Shamkant, N. (2007). Fundamentos de Sistemas de bases de datos, 5ª Edición, PEARSON EDUCACIÓN S.A.: Madrid pp. 205-243