Está en la página 1de 3

declare

type paises is table of number INDEX BY binary_integer;

tpaises paises;

begin
tpaises :=(1);
tpaises :=(2);
tpaises :=(3);

end;

declare
type pais is record(
co_pais number not nul :=27,
descripcion varchar2(50),
continente varchar2 (50));
type paises is table of pais index by binary_integer;
tpaises paises;
begin
/*tpaises(1).co_pais :=27;*/
tpaises(2).descripcion :='italia';
tpaises(2).descripcion :='europa';
end;

type tipo_registro_empleado is record(


empno number (4) not null,
ename emp.ename%type,
job emp.job%type,
sal number (7,2) default 1000);
registro_empleado tipo_registro_empleado;

declare
type tipo_tabla_nombre is table of emp.ename%type
index by binary_integer;
type tipo_tabla_flecha is table of date
index by binary_integer;
tabla_nombre tipo_tabla_nombre;
tabla_flecha tipo_flecha;
begin
tabla_nombre(1) :='cameron';
tabla_flecha(8) := systdate + 7;
if tabla_nombre.exist(1) then
insert into tabla_nombre values('aaa');
end if;
end;
---------------
set serveroutput on

begin
dbms_output.put('hola mis errores');
end;

create table libro(


titulo varchar2(40),
autor varchar2(40),
editorial varchar2(40),
precio number(5,2);
);

-- insertar datos--
insert into libros values('uno','richard b','planeta',15);
insert into libros values('ilusiones','richard b','planeta',12);
insert into libros values('aprende php','mario m','nuevo siglo',50);
insert into libros values('matematica estas ahi',' paenza','nuevo siglo',1);
insert into libros values('puente al infinito','b richard','sudamericana',14);
insert into libros values('antologia','j. l.','paidos',24);
insert into libros values('java en 10 minutos','mario m','siglo xxI',45);

-- crear procedimientos---
create or replace procedure pa_libro_aumentario(aeditorial in varchar2)
as
begin
update libros set precio=precio+(precio*0.1)
where editorial=aeditorial;
end;

--- ejecutando el procedimiento


exec pa_libro_aumentar1o('planeta');

--- borrar tabla


drop table libro;

create or replace procedurepa_libros_aumentar(aeditorial in varchar2,aporcentaje in


number default 10)
as
begin
update libros set precio=precio+(precio*aporcentaje/100)
where editorial=aeditorial;
end;

----mostrar la tablas---
select * from libros ;

----ejecutar--
exec pa_libros_aumentar('planeta',30);

exec pa_libros_aumentar('paidos');

/*definir con procedimiento*/

create or replace procedure pa_libroinsertar


(atitulo in varchar2 default null, aautor in varchar2 default 'desconocido',
aeditorial in varchar2 'sin especificar', aprecio in number default 0);
as
begin
insert into libros values (atitulo,aautor,aeditorial,precio);
end;

--ejecutamos
exec pa_libros_inserta;

----mostrar los registros


select * from libros;
---llamar al proced. y enviamos valores para el 1er y 4to parametro
exec pa_libros_insertar('uno','','',100);

------------------------------------------------------------
--un programa que calcule la distancia de 2 puntos de un plano

declare
v_point_x1 number :=3;
v_point_x2 number :=2;
v_point_y1 number :=5;
v_point_y2 number :=8;
v_distance decimal (6,2);
begin
v_distance := sqrt(power((v_point_x1 - v_point_x2),2)+ power(v_point_y1 -
v_point_y2),2);
dbms_output.put_line('calcular la distancia de sos puntos');
dbms_output.put_line('*************************************');
dbms_output.put_line('punto x :(' || v_point_x1 || ',' || v_point

-------------------
set serveroutput on
declare
v_multiple number := 0;
begin
for v_num in 1..10 loop
if(mod(v_multiple := v_multiple + 1 ;

También podría gustarte