CREATE TABLE AUTOR (IDAUTOR INT PRIMARY KEY, NOMBRE VARCHAR2(30));
CREATE TABLE LIBRO (IDLIBRO INT PRIMARY KEY, IDAUTOR INT, NOMBRE VARCHAR2(30));
--CREAR LLAVE FORANEA IDAUTOR EN LIBRO
ALTER TABLE LIBRO
ADD CONSTRAINT FK_LIBRO_AUTOR FOREIGN KEY (IDAUTOR) REFERENCES AUTOR (IDAUTOR);
INSERT INTO AUTOR VALUES(01, 'GABRIEL GARCIA MARQUEZ');
INSERT INTO AUTOR VALUES(02, 'PABLO NERUDA');
--INSERTAR 5 LIBROS
INSERT INTO LIBRO VALUES(11, 01, 'EL ALQUIMISTA');
INSERT INTO LIBRO VALUES(12, 01, 'INGENIERIA DE SOFTWARE');
INSERT INTO LIBRO VALUES(13, 02, 'HOLA QUE TAL');
INSERT INTO LIBRO VALUES(14, 02, 'MI NOMBRE ES...');
INSERT INTO LIBRO VALUES(15, 01, '20 POEMAS DE AMOR Y...');
--MODIFICAR EL TAMAÑO DEL ATRIBUTO NOMBRE EN TABLA LIBRO A 50
ALTER TABLE LIBRO MODIFY NOMBRE VARCHAR2(50);
--AGREGAR LA FECHA DE NACIMIENTO A TABLA AUTOR
ALTER TABLE AUTOR ADD FECNAC DATE;
--COMPLETAR LA FECHA DE NACIMIENTO DE LOS AUTORES
UPDATE AUTOR SET FECNAC = '12-07-1904' WHERE NOMBRE = 'PABLO NERUDA';
UPDATE AUTOR SET FECNAC = '06-03-1927' WHERE NOMBRE = 'GABRIEL GARCIA MARQUEZ';
--seleccionar todos los libros del autor 'pablo neruda'
SELECT * FROM LIBRO L INNER JOIN AUTOR A ON L.IDAUTOR=A.IDAUTOR
WHERE A.NOMBRE = 'PABLO NERUDA';
SELECT * FROM LIBRO L, AUTOR A WHERE L.IDAUTOR = A.IDAUTOR
AND A.NOMBRE = 'PABLO NERUDA';
SELECT * FROM LIBRO WHERE IDAUTOR = (SELECT IDAUTOR FROM AUTOR WHERE A.NOMBRE = 'PABLO NERUDA');
--CALCULAR LA EDAD DE GABRIEL GARCIA MARQUEZ
SELECT NOMBRE, (SYSDATE - FECNAC)/365 FROM AUTOR WHERE 'GABRIEL GARCIA MARQUEZ'
No hay comentarios:
Publicar un comentario