Progerama PL/SQL
drop table T1;
delete T1;
CREATE TABLE T1(
e integer,
f integer
);
select * from T1;
--Begin
-- DELETE FROM T1;
INSERT INTO T1 VALUES(1, 3);
INSERT INTO T1 VALUES(2, 4);
--End
select * from t1
/* Lo de arriba es SQL; debajo es el programa PL/SQL */
DECLARE
a NUMBER;
b NUMBER;
BEGIN
SELECT e,f INTO a,b
FROM T1
WHERE e>1; --Este select asigna el atributo e->a y f->b, de todos aquellos registros cuyo atributo e > 1
INSERT INTO T1 VALUES(b,a);
END;
el programa crea una tabla,
inserta 2 valores por cada campo,
luego el programa PL/SQL selecciona 2 valores mayores a 1 y los asigna a a y b.
inserta los valores.
Luego al querer ejecutar nuevamente entrega un error, ya que la seleccion ya no devuelve 2 datos, sino 4 y no sabe a que variable asignar.
Imprime salida a pantalla
begin
dbms_output.put_line('Hola washi');
end;
Es necesario activar DBMS Output, el botòn redondo debe estar en verde
Programa que implementa un if simple
declare
precio integer := 10;
begin
if precio > 5 then
dbms_output.put_line('Precio es : '|| precio);
end if;
end;
Programa que implementa un if con else y asignación y concatenación de variables
declare
precio integer := 10;
text varchar2(5);
begin
if precio > 15 then
text := 'mayor';
--dbms_output.put_line('Precio es : '|| precio);
else
text := 'menor';
--dbms_output.put_line('Precio es : '|| );
end if;
dbms_output.put_line('El precio es '|| text ||' y su valor es '|| precio);
end;
Programa que implementa un loop con una condición
declare
i integer:= 1;
begin
LOOP
dbms_output.put_line('Hola mundo '|| i);
i:=i+1;
EXIT WHEN i > 10;
END LOOP;
END;
Clase de recuperacion
select * from empleado where to_char(fechnac,'dd-mm-yyyy') like '%06-1963%'
select * from empleado where to_char(fechnac,'dd-mm-yyyy') not like '%06-1963%'
select * from empleado where upper(cargo) not in ('GERENTE', 'SUPERVISOR')
select * from cliente where upper(direccion) like ('%GLASGOW%')
select * from cliente where trim(upper(nombre)) like ('MARI_')
select * from visita where comentario is NULL
sábado, 10 de diciembre de 2011
viernes, 9 de diciembre de 2011
clase 09/12/2011
que es la tabla dual y para que sirve???
es una tabla fictisia
por elemplo:
para mostrar la fecha no es necesario crear una tabla solo para mostrar la fecha.
selec sysdate from dual
creamos tabla persona
create
id table persona ( integer primary key not null,nombre char(25),apellido char(30),fechaNac date,renta
);numeric (5,1)
agregamos datos
insert into persona values (1,'pedro','picapiedra','1-12-1960',200.0);
incrementar automaticamente el valos de id (secuencia)
create sequence seqPersonastart with 1increment
agregarmos un registro a la tabla persona ocupando secuencia autoencrementable
insert
into persona values (seqPersona.nextval,'pablo','marmol','1-12-1965',199.0); by 1;
es una tabla fictisia
por elemplo:
para mostrar la fecha no es necesario crear una tabla solo para mostrar la fecha.
selec sysdate from dual
creamos tabla persona
create
id table persona ( integer primary key not null,nombre char(25),apellido char(30),fechaNac date,renta
);numeric (5,1)
agregamos datos
insert into persona values (1,'pedro','picapiedra','1-12-1960',200.0);
incrementar automaticamente el valos de id (secuencia)
create sequence seqPersonastart with 1increment
agregarmos un registro a la tabla persona ocupando secuencia autoencrementable
insert
into persona values (seqPersona.nextval,'pablo','marmol','1-12-1965',199.0); by 1;
Trabajo: Buenas practicas PL/SQL
El documento detalla algunas de las mejores prácticas para desarrollar en PL/SQL, variables y estructuras, manejo de excepciones, etc., para mayor detalle descargar.
Click para descargar
Integrantes:
Carlos Melo Paredes.
Andrés González.
Francisco Muñoz Hernandez.
Waddinton Zuñiga.
Click para descargar
Integrantes:
Carlos Melo Paredes.
Andrés González.
Francisco Muñoz Hernandez.
Waddinton Zuñiga.
sábado, 3 de diciembre de 2011
03-12-2011
create table empleado(numempleado char(4) primary key, )
Crar tablas, distintos tipos de datos, integer, char, varchar, number, float, date
definir claves primarias, foráneas.
select 2/3 from dual
tabla virtual para hacer cualquier operaciòn donde se necesite una tabla
Investigar sobre buenas praticas en pl sql próximo sábado.
word
ppt
DDL ---> create table (define nuevos datos)
DML ---> insert (manipulacion de datos)
create table t1 (
id integer primary key not null
nombre char(25),
apellido char(30),
fecha date
);
Crar tablas, distintos tipos de datos, integer, char, varchar, number, float, date
definir claves primarias, foráneas.
select 2/3 from dual
tabla virtual para hacer cualquier operaciòn donde se necesite una tabla
Investigar sobre buenas praticas en pl sql próximo sábado.
word
ppt
DDL ---> create table (define nuevos datos)
DML ---> insert (manipulacion de datos)
create table t1 (
id integer primary key not null
nombre char(25),
apellido char(30),
fecha date
);
viernes, 2 de diciembre de 2011
02-12-2011
select * from empleado where upper (sexo) = 'M'
upper transforma el atributo a mayuscula
lower transforma el atributo a minuscula
select cargo, count (*) as cantidad from empleado group by cargo order by (*)
selecciona los cargos y los cuenta
select CARGO, count(*) as cantidad from empleado group by cargo having count(*) >= 5 order by cargo
selecciona los cargos mayores a 5 y los cuenta
select ciudad, count(*) as numero_de_oficina from oficina group by ciudad
upper transforma el atributo a mayuscula
lower transforma el atributo a minuscula
select cargo, count (*) as cantidad from empleado group by cargo order by (*)
selecciona los cargos y los cuenta
select CARGO, count(*) as cantidad from empleado group by cargo having count(*) >= 5 order by cargo
selecciona los cargos mayores a 5 y los cuenta
select ciudad, count(*) as numero_de_oficina from oficina group by ciudad
clases ACI-900
*viernes 22:00 hras (fin clases sin brake)
*Los sabados 10,17 dic y 07 enero
-clases desde las 8 de la mañana
catedra 1, 17 diciembre
catedra 2, 6 Enero
Examen 14 Enero
2 catedras (60%) + examen (40%)
dato de links
www.diigo.com/user/efischer
*Los sabados 10,17 dic y 07 enero
-clases desde las 8 de la mañana
catedra 1, 17 diciembre
catedra 2, 6 Enero
Examen 14 Enero
2 catedras (60%) + examen (40%)
dato de links
www.diigo.com/user/efischer
Suscribirse a:
Entradas (Atom)