Código SQL:
resulta que este es el procedimiento ,y lo que no entiendo es porque despues en Ver original
SET SERVEROUTPUT ON; CREATE OR REPLACE PROCEDURE CONTARVOC (FRA VARCHAR2, CANTVOC OUT NUMBER) IS BEGIN FOR I IN 1..LENGTH(FRA) LOOP IF SUBSTR(FRA,I,1) IN ('A','E','I','O','U') AND SUBSTR(FRA,I,1)!=' ' THEN CANTVOC:=CANTVOC+1; --NOS DEVUELVE LA CANTIDAD DE VECES DE LA VARIABLE PASADA POR PARAMETRO END IF; END LOOP; END; / [/CODE] [CODE] SET SERVEROUTPUT ON; CREATE OR REPLACE FUNCTION CONTARCONS (FRA VARCHAR2 ) RETURN NUMBER IS CONT NUMBER:=0; BEGIN FOR I IN 1.. LENGTH(FRA) LOOP IF SUBSTR(FRA,I,1) NOT IN (' ','A','E','I','O','U') THEN CONT:=CONT+1; END IF; END LOOP; RETURN CONT; END; / SET SERVEROUTPUT ON; DECLARE CURSOR CCLI IS SELECT NOMBRE FROM TCLIENTE; X CCLI%ROWTYPE; CANTVOCALES NUMBER(4):=0; BEGIN OPEN CCLI; LOOP FETCH CCLI INTO X; EXIT WHEN CCLI%NOTFOUND; --PROCEDIMIENTO IN/OUT CONTARVOC(X.NOMBRE,CANTVOCALES); DBMS_OUTPUT.PUT_LINE(X.NOMBRE || ' TIENE '|| CANTVOCALES ||' VOCALES Y '|| CONTARCONS(X.NOMBRE) || ' CONSONANTES'); END LOOP; CLOSE CCLI; END; /
el programa que me creo con el cursor no me aparecen la cantidad de vocales... no me aparece nada .. no se que me falta poner... asi que nose agradeceria que alguien me ayudase