CREATE OR REPLACE PROCEDURE COMPARAR
AS
TEXTO LIST_OF_PLAIN_PASSWORD.PASSWORD%TYPE;
CIFRADA USER_EJERCICIO.PASSWORD%TYPE;
CURSOR C1 IS
SELECT ORA_HASH(PASSWORD) INTO TEXTO
FROM LIST_OF_PLAIN_PASSWORD;
CURSOR C2 IS
SELECT USER_EJERCICIO.PASSWORD INTO CIFRADA
FROM USER_EJERCICIO;
BEGIN
FOR REG IN C1 LOOP
FOR REG2 IN C2 LOOP
IF(TEXTO=CIFRADA) THEN
INSERT INTO USER_WITH_BAD_PASS VALUES(TEXTO);
END IF;
END LOOP;
END LOOP;
END COMPARAR;
CREATE OR REPLACE PROCEDURE COMPARAR
AS
CURSOR C1 IS
SELECT ORA_HASH(PASSWORD) PASSWORD
FROM LIST_OF_PLAIN_PASSWORD;
CURSOR C2 IS
SELECT PASSWORD, MY_USER
FROM USER_EJERCICIO;
BEGIN
DELETE USER_WITH_BAD_PASS;
FOR REG IN C1 LOOP
FOR REG2 IN C2 LOOP
IF(REG.PASSWORD = REG2.PASSWORD) THEN
INSERT INTO USER_WITH_BAD_PASS VALUES(REG2.MY_USER);
END IF;
END LOOP;
END LOOP;
END COMPARAR;