Oracle - Novato en Pl/Sql

 
Vista:

Novato en Pl/Sql

Publicado por luis (2 intervenciones) el 07/03/2006 20:33:13
Soy novato en pl/sql estoy trabajando con oracle 8 y me ha ido bien pero ahora que necesito hacer mas cosas con las tablas q tengo en oracle he tratado con pl/sql hacer un programita de prueba con una tabla de prueba pero nose donde tengo que colocar el codigo para que funcione, he insertado el mismo en el sql/plus pero me dan errores hasta en la primera linea Begin
el codigo es este
(Begin
select * from personal where ciudad='Elche';
if (edad>=22)
insert into personal values ('sddds','xcxcc',25,'Elche');
end if;
if (edad<21)
insert into personal values ('jajaj','jejej',19,'Alcoy');
end if;
End;)
le coloque parentesis al inicio y al final y es la unica forma que corra mi pregunta es donde debo colocar mi codigo para que funcione y si es en el sql/plus que estoy haciendo mal???

Mil disculpas por las preguntas que para ustedes seran tontas
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Novato en Pl/Sql

Publicado por milson cardona (26 intervenciones) el 08/03/2006 14:03:38
Un saludo especial desde colombia

los errores son los siguientes.

1- no puedes hacer un SELECT * dentro de plsql, ya que necesitas almacenar los datos que te devuelva la consulta en variables para pooder actuar sobre ellos.

SELECT edad INTO vn_edad FROM ... WHERE...

2- cualquier consulta que hagas en plsql debe devolver 1 y solo 1 registro (a no ser que trabajes con cursores), ya que el registro se va ha almacenar en variables y PLSQL necesita saber exactamente cual fila va a bajar a las variables.
como te dije, si necesitas trabajar con varias filas debes trabajar con CURSORES, pero ese es otro cuento.

3- los parenresis te sobran, asi no funciona nada de lo que tienes dentro del codigo plsql que tienes, a proposito ese codigo que tiene se llama bloques anonimos, porque no tienen nombre y solo se puede correr una sola vez, a no ser que los almacenes como funciones o procedimientos.

para correr estos bloques anonimos te aconsejo el WORKSHEET herramienta que viene con oracle. el sqlplus es mas engorroso para correr codigo de bloques anonimos.

4- y por ultimo te aconsejo un buen manual de PLSQL, que existen muchos en la red, cualquiera de ellos te darán nociones básicas que te ayudaran a empezar con esta poderosa herramienta.

espero ayudarte un poco
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Novato en Pl/Sql

Publicado por luis (2 intervenciones) el 08/03/2006 14:46:53
Muchas gracias por tu respuesta. Me ha ayudado
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar