Ejercicio tipo examen - GiselleE/basedatos2 GitHub Wiki

create table trabajador ( id_trabajador integer, nombre varchar2(120), paterno varchar2(120), telefono varchar2(120), constraint id_trabajador_pk primary key(id_trabajador));

create table nomina ( id_nomina integer, id_trabajador integer, sueldo_base float, horasextra integer, constraint id_nomina_pk primary key(id_nomina),constraint id_trabajador_fk foreign key(id_trabajador) references trabajador(id_trabajador));

create sequence sec_trabajador start with 1 increment by 1 nomaxvalue;

create sequence sec_nomina start with 1 increment by 1 nomaxvalue;

create or replace procedure guardar_trabajador(my_id_trabajador out integer, my_nombre in varchar2, my_paterno in varchar2, my_telefono in varchar2) as begin select sec_trabajador.nextval into my_id_trabajador from dual; insert into trabajador values(my_id_trabajador,my_nombre, my_telefono); end; /

create or replace procedure generar_nomina( my_id_trabajador out integer, my_nombre in varchar2, my_paterno in varchar2, my_telefono in varchar2, my_id_nomina out integer, my_sueldo_base in float, my_horasextra in integer) as valor_id_trabajador integer; begin guardar_trabajador( valor_id_trabajador, my_nombre, my_paterno, my_telefono); select sec_nomina.nextval into my_id_nomina from dual; insert into nomina values(my_id_nomina,valor_id_trabajador, my_sueldo_base, my_horasextra); end; / declare valor integer; begin generar_nomina('juan','vazquez','583740686',valor,40000,0,9); end; / selectfrom trabajador; selectfrom nomina;