Oracle - Ayuda con ejercicio: Llamar funciones PL/SQL

   
Vista:

Ayuda con ejercicio: Llamar funciones PL/SQL

Publicado por paco01 (2 intervenciones) el 02/06/2017 02:55:54
Hola, tengo un ejercicio que me pide pasarle un numero, y a partir de ese número, debe mostrar ciertas cosas de otro procedimiento.
--El siguiente trozo de código debe ser llamado por el otro procedimiento, y el titulo de este ejercicio es el siguiente: Crear un bloque PL/SQL que muestre para todos los clientes cuantas mascotas tienen.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
create or replace procedure ejer4
is
  cursor c1 is select nombre, dni from duenios;
  datos c1%rowtype;
  num number;
begin
  open c1;
    loop
    num := 0;
    fetch c1 into datos;
      if (c1%notfound) then
        exit;
      else
        dbms_output.put_line(datos.nombre);
        select count(*) into num from mascota where duenio=datos.dni;
        dbms_output.put_line(num);
      end if;
    end loop;
  close c1;
end ejer4;

El ejercicio que no sé hacer es este:
Crear un bloque PL/SQL que pida al usuario un número. El bloque mostrará por pantalla el nombre, apellidos y número de teléfono de aquellos usuarios que tengan tantas mascotas como haya indicado el usuario. (Utilizar el proceso anterior)
Sólo sé que en el begin tengo que llamar al procedimiento anterior, pero no sé qué más hacer. Ayúdenme por favor, no encuentro la solución.
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

Ayuda con ejercicio: Llamar funciones PL/SQL

Publicado por César (3 intervenciones) el 02/06/2017 10:14:19
Si quieres los dueños que tienen 4 mascotas sería así:

select count(*),duenio
from mascota
group by duenio
having count(*)=4;
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

Ayuda con ejercicio: Llamar funciones PL/SQL

Publicado por paco01 (2 intervenciones) el 02/06/2017 11:38:58
Gracias pero lo que necesito es llamar a la función desde otra función.
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

Ayuda con ejercicio: Llamar funciones PL/SQL

Publicado por César (3 intervenciones) el 02/06/2017 12:50:10
Creas una función :

create function nombrefuncion (parametroentrada in number) return number
is
begin
---codigo funcion
end;

Para llamar a esta función:

valordevuelto number;
valordevuelto:=select nombrefuncion (numero) from dual;
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