clase del 20 de junio - GiselleE/basedatos2 GitHub Wiki

EJERCICIO: Crear una vista donde se muestra el nombre de la aerolínea, los aviones que tiene y los asientos de los aviones.

CREATE TABLE AEROLINEA (ID_AEROLINEA INTEGER, NOMBRE VARCHAR2(120), CONSTRAINT ID_AEROLINEA_PK PRIMARY KEY(ID_AEROLINEA));

CREATE TABLE AVION (ID_AVION INTEGER, ID_AEROLINEA INTEGER, ASIENTO INTEGER, CONSTRAINT ID_AVION_PK PRIMARY KEY(ID_AVION), CONSTRAINT ID_AEROLINEA_FK FOREIGN KEY(ID_AEROLINEA) REFERENCES AEROLINEA(ID_AEROLINEA));

create sequence SEC_AEROLINEA start with 1 increment by 1 nomaxvalue;

create sequence SEC_AVION start with 1 increment by 1 nomaxvalue;

create or replace PROCEDURE GUARDAR_AEROLINEA( MY_ID_AEROLINEA OUT INTEGER, MY_NOMBRE IN VARCHAR2) AS BEGIN
SELECT SEC_AEROLINEA.NEXTVAL INTO MY_ID_AEROLINEA FROM DUAL; INSERT INTO AEROLINEA VALUES(MY_ID_AEROLINEA, MY_NOMBRE); END; /

create or replace PROCEDURE GUARDAR_AVION( MY_ID_AVION OUT INTEGER,MY_ID_AEROLINEA IN INTEGER, MY_ASIENTOS IN INTEGER) AS BEGIN
SELECT SEC_AVION.NEXTVAL INTO MY_ID_AVION FROM DUAL; INSERT INTO AVION VALUES(MY_ID_AVION, MY_ID_AEROLINEA, MY_ASIENTOS); END; /

declare valor integer; BEGIN guardar_avion(valor,'Aerolinea'); guardar_avion(valor,'Atrobus'); guardar_avion(valor,'Aeromexico'); guardar_avion(valor,'Mexicavion'); end; /

DECLARE