Sie sind auf Seite 1von 5

CREATE DATABASE EXAMEN

USE EXAMEN

CREATE TABLE ALUMNOS (


CODIGO_ALUMNO INT,
NOMBRE VARCHAR (30),
APELLIDOS VARCHAR (50),
DIRECCION VARCHAR (80),
CIUDAD VARCHAR (30),
CP CHAR (5),
PAIS VARCHAR (20),
TELEFONO CHAR (12),
FECHA_NAC DATE)

INSERT INTO ALUMNOS


VALUES (1,'MANUEL','FERNANDEZ DIAZ','ALDAMA 14','MEXICO,
D.F','11030','MEXICO','05555451267','12-01-78')
INSERT INTO ALUMNOS
VALUES (2,'NICOLAS','CARPIO BATALES','HOSPITAL GRAL 21','MEXICO,
D.F','18940','MEXICO','055578124581','17-08-90')
INSERT INTO ALUMNOS
VALUES (3,'LUISA','MIGUEL ANDRES','SAN FELIZ
326','MADRID','08950','ESPAÑA','0887905454','21-02-89')
INSERT INTO ALUMNOS
VALUES (4,'ANTONIA','PEREZ LOPEZ','MADRID
11','MADRID','09560','ESPAÑA','09178392312','14-02-72')
INSERT INTO ALUMNOS
VALUES (5,'FELISA','GUADAL SANCHEZ','HIDALGO
32','TOLUCA','01680','MEXICO','72227804545','15-08-92')
INSERT INTO ALUMNOS
VALUES (6,'ARMANDO','TABASCON ARGENTE','HIDALGO
980','TOLUCA','03940','MEXICO','72242502315','06-07-74')
INSERT INTO ALUMNOS
VALUES (7,'JOSE','MARTINEZ PEREZ','REFORMA 560','MEXICO,
D.F','12300','MEXICO','05559761690','08-09-82')
INSERT INTO ALUMNOS
VALUES (8,'JAVIER','SANTOS MENDEZ','PROSPERIDAD 114','MEXICO,
D.F','13900','MEXICO','05556811900','16-11-80')

SELECT * FROM ALUMNOS

CREATE TABLE PROFESORES(


COD_PROF INT,
NOMBREP VARCHAR (30),
APELLIDOS VARCHAR (50),
DIRECCION VARCHAR (80),
CIUDAD VARCHAR (30),
CP CHAR (5),
PAIS VARCHAR (20),
TELEFONO CHAR (12),
FECHA_NAC DATE)

drop table PROFESORES

INSERT INTO PROFESORES


VALUES (1,'ANDRES','FERNANDO DIAZ','UNION 14','MEXICO,
D.F','12030','MEXICO','055545444947','12-05-52')
INSERT INTO PROFESORES
VALUES (2,'FEDERICO','GARCIA SAN JUAN','DIV DEL NORTE 111','MEXICO,
D.F','11080','MEXICO','5552417890','25-04-62')
INSERT INTO PROFESORES
VALUES (3,'FERNANDO','SANCHEZ PLAZA','AV ZARAGOZA
454','QUERETARO','08956','MEXICO','5554589652','01-01-63')
INSERT INTO PROFESORES
VALUES (4,'MARIA','PEÑA LUCAS','AV CATALUÑA
52','MADRID','09562','ESPAÑA','09856089565','14-08-75')
INSERT INTO PROFESORES
VALUES (5,'ANA','GARCIA CISNEROS','REFORMA 456','MEXICO,
D.F','11965','MEXICO','5558953216','29-03-71')

SELECT*FROM PROFESORES

CREATE TABLE CURSOS(


CODIGO_CURSO INT,
CURSO VARCHAR (20),
CODIGO_PROF INT,
FECHA_INICIO DATE,
FECHA_FIN DATE,
HORA_INICIO CHAR (5),
HORA_FIN CHAR(5),
COMENTARIOS VARCHAR (30))

INSERT INTO CURSOS


VALUES (1,'ACCESS',1,'01-01-05','30-06-05','17:00','20:00','34 ALUMNOS')
INSERT INTO CURSOS
VALUES (2,'EXCEL',3,'12-04-05','30-05-05','12:00','14:00','56 ALUMNOS')
INSERT INTO CURSOS
VALUES (3,'WORD',1,'01-01-05','30-06-05','09:00','14:00','40 ALUMNOS')
INSERT INTO CURSOS
VALUES(4,'ACCESS',1,'01-01-05','30-06-05','17:00','20:00','34 ALUMNOS')
INSERT INTO CURSOS
VALUES(5,'EXCEL',3,'12-04-05','30-05-05','12:00','14:00','56 ALUMNOS')
INSERT INTO CURSOS
VALUES(6,'WORD',1,'01-01-05','30-06-05','9:00','14:00','40 ALUMNOS')
INSERT INTO CURSOS
VALUES(7,'POWERPOINT',5,'02-02-05','30-08-05','14:00','18:00','12 ALUMNOS')
INSERT INTO CURSOS
VALUES(8,'EXCEL',2,'01-01-05','27-06-05','9:00','12:00','30 ALUMNOS')
INSERT INTO CURSOS
VALUES(9,'CONTABILIDAD',4,'01-01-05','30-12-05','16:00','21:00','45 ALUMNOS')
INSERT INTO CURSOS
VALUES(10,'MICROSOFT OFFICE',2,'01-01-05','12-08-05','17:00','21:00','56
ALUMNOS')
select*from CURSOS
DROP TABLE CURSOS

CREATE TABLE EVALUACIONES(


CODIGO_ALUM INT,
CODIGO_CURSOE INT,
NOTA_FINAL INT,
OBSERVACIONES VARCHAR (30))

DROP TABLE EVALUACIONES

INSERT INTO EVALUACIONES


VALUES (1,1,90,'ES UN BUEN ALUMNO')
INSERT INTO EVALUACIONES
VALUES (2,5,80,'REGULAR')
INSERT INTO EVALUACIONES
VALUES (3,10,60,'ESTUDIA POCO')
INSERT INTO EVALUACIONES
VALUES (4,9,100,'EXCELENTE ESTUDIANTE')
INSERT INTO EVALUACIONES
VALUES (5,4,95,'ESTUDIA BASTANTE')
INSERT INTO EVALUACIONES
VALUES (6,8,85,'VA BIEN')
INSERT INTO EVALUACIONES
VALUES (7,1,90,'ESTUDIA MUCHO')
INSERT INTO EVALUACIONES
VALUES (8,6,50,'NO ESTUDIA NADA')

drop table EVALUACIONES

SELECT* FROM EVALUACIONES

/*Primera pregunta: creear un tabla llamada inscripciones sin restrincciones que


contenga e idinscrip fecha curso alumno profesor*/

create table instrucciones(


idinscrip int,
fechains date,
cursoins int,
alumnins int,
profeins int
)

DROP TABLE instrucciones

ALTER TABLE instrucciones


ALTER COLUMN idinscrip int not null

ALTER TABLE instrucciones


ADD PRIMARY KEY ( idinscrip)

ALTER TABLE instrucciones


ADD FOREIGN KEY(cursoins) REFERENCES CURSOS(CODIGO_CURSO) ON DELETE CASCADE ON
UPDATE CASCADE

ALTER TABLE instrucciones


ADD FOREIGN KEY(alumnins) REFERENCES ALUMNOS(CODIGO_ALUMNO) ON DELETE CASCADE ON
UPDATE CASCADE

ALTER TABLE instrucciones


ADD FOREIGN KEY(profeins) REFERENCES PROFESORES (COD_PROF) ON DELETE CASCADE ON
UPDATE CASCADE

ALTER TABLE PROFESORES


ALTER COLUMN COD_PROF int not null

ALTER TABLE PROFESORES


ADD PRIMARY KEY (COD_PROF)

ALTER TABLE CURSOS


ALTER COLUMN CODIGO_CURSO INT NOT NULL

ALTER TABLE CURSOS


ADD PRIMARY KEY (CODIGO_CURSO)

ALTER TABLE ALUMNOS


ALTER COLUMN CODIGO_ALUMNO INT NOT NULL
ALTER TABLE ALUMNOS
ADD PRIMARY KEY(CODIGO_ALUMNO)
drop table instrucciones

insert into instrucciones


values(1,'2-2-2',8,4,3)
insert into instrucciones
values(2,'3-3-3',7,2,1)
insert into instrucciones
values(3,'5-5-5',3,3,3)
insert into instrucciones
values(4,'9-9-9',5,1,2)

/*AGREGE UNA COLUMNA ALA TABLA EVALUACIONES LLAMADA PROFESOR CON LO SIGUIENTES
DATOS
3.
2.
3.
1.
2.
5.
5.
*/

ALTER TABLE EVALUACIONES


ADD PROFESORESEVA INT

ALTER TABLE EVALUACIONES


ADD FOREIGN KEY(PROFESORESEVA) REFERENCES PROFESORES (COD_PROF)ON DELETE CASCADE
ON UPDATE CASCADE

UPDATE EVALUACIONES SET PROFESORESEVA=4


WHERE CODIGO_ALUM=1

UPDATE EVALUACIONES SET PROFESORESEVA=3


WHERE CODIGO_ALUM=2

UPDATE EVALUACIONES SET PROFESORESEVA=2


WHERE CODIGO_ALUM=3

UPDATE EVALUACIONES SET PROFESORESEVA=3


WHERE CODIGO_ALUM=4

UPDATE EVALUACIONES SET PROFESORESEVA=1


WHERE CODIGO_ALUM=5

UPDATE EVALUACIONES SET PROFESORESEVA=1


WHERE CODIGO_ALUM=5

UPDATE EVALUACIONES SET PROFESORESEVA=2


WHERE CODIGO_ALUM=6

UPDATE EVALUACIONES SET PROFESORESEVA=5


WHERE CODIGO_ALUM=7
UPDATE EVALUACIONES SET PROFESORESEVA=5
WHERE CODIGO_ALUM=8

/*en la tabla evaluaciones la nota final de algunos alumnos fue modificada


del alumno numero3 su calificacion correcta es 80
del alumno numero 8 es 100 */

UPDATE EVALUACIONES SET NOTA_FINAL=80


WHERE CODIGO_ALUM=3

UPDATE EVALUACIONES SET NOTA_FINAL=100


WHERE CODIGO_ALUM=8

/*GENERA UNA CONSULTA QUE MUESTRE EL NOMNBRE DEL ALUMNO NOMBRE DEL PROFESOR
NOMBRE DEL CURSO NOTA FINAL Y OBSERVACIONES DE AQUELLOS ALUMNOS
CON UNA NOVA MAYOR O IGUAL A NOVETA PERO SOLO DE LOS CURSOS QUE SU NOMBRE INICIE
CON E O A */

select NOMBRE AS 'ALUMNO',NOMBREP AS 'PROFESOR',CURSO as 'CURSOS


TOMADO',NOTA_FINAL AS 'CALIFCACION',OBSERVACIONES as 'OBSERVACIONES '
from ALUMNOS
join EVALUACIONES
on CODIGO_ALUMNO=CODIGO_ALUM
join CURSOS
ON CODIGO_CURSOE=CODIGO_CURSO
join PROFESORES
on CODIGO_PROF=COD_PROF
where(NOMBRE like 'E%'or NOMBRE like 'A%' and NOTA_FINAL>=90)

/* UNA VISTA 3 CAMPOS DE CADA UNA DE LAS TABLAS

De la vista anterior muestre nombre y apellidos de profesores y alumnos donde su


nombre incie con a M O J */
create view vista1

select NOMBRE AS 'ALUMNO',NOMBREP AS 'PROFESOR',CURSO as 'CURSOS


TOMADO',NOTA_FINAL AS 'CALIFCACION',OBSERVACIONES as 'OBSERVACIONES '
from ALUMNOS
join EVALUACIONES
on CODIGO_ALUMNO=CODIGO_ALUM
join CURSOS
ON CODIGO_CURSOE=CODIGO_CURSO
join PROFESORES
on CODIGO_PROF=COD_PROF
where(NOMBRE like 'E%'or NOMBRE like 'A%' and NOTA_FINAL>=90)

LA CALIFICACION QUE YO MEREZCO ES 80

LA CALIFACION QUE CREEO QUE APRENDI ES 87

Das könnte Ihnen auch gefallen