sql >> Base de Datos >  >> RDS >> Oracle

¿Cómo validar la dirección de correo electrónico usando PL/SQL?

Aquí doy un ejemplo para validar la dirección de correo electrónico usando expresiones regulares PL/SQL (REGEXP) en Oracle.

Validar correo electrónico utilizando el programa PL/SQL

En el siguiente programa PL/SQL, validará la dirección de correo electrónico utilizando la función REGEXP_LIKE.

SET SERVEROUTPUT ON;

DECLARE
   b_isvalid   BOOLEAN;
BEGIN
   b_isvalid :=
      REGEXP_LIKE ('[email protected]',
                   '^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$');

   IF b_isvalid
   THEN
      DBMS_OUTPUT.put_line ('It is a valid email address.');
   ELSE
      DBMS_OUTPUT.put_line ('It is Not a valid email address.');
   END IF;
END;
/

Salida

It is a valid email address.
PL/SQL procedure successfully completed.

Obtener la lista de direcciones de correo electrónico no válidas de una tabla mediante SQL

La siguiente consulta SQL recuperará todas las direcciones de correo electrónico no válidas almacenadas en la columna CORREO ELECTRÓNICO de la tabla EMPLEADOS en Oracle.

SELECT *
  FROM EMPLOYEES
 WHERE NOT REGEXP_LIKE (email,
                        '^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$');

Del mismo modo, para obtener la lista de direcciones de correo electrónico válidas, elimine NOT de la consulta anterior.

Ver también:

  • Comprobar si un archivo es una imagen mediante PL/SQL