Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Wie validiere ich E-Mail-Adressen mit PL/SQL?

Hier gebe ich ein Beispiel zur Validierung von E-Mail-Adressen mit regulären PL/SQL-Ausdrücken (REGEXP) in Oracle.

E-Mail mit PL/SQL-Programm validieren

Im folgenden PL/SQL-Programm validiert es die E-Mail-Adresse mit der Funktion 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;
/

Ausgabe

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

Rufen Sie die Liste der ungültigen E-Mail-Adressen mithilfe von SQL aus einer Tabelle ab

Die folgende SQL-Abfrage ruft alle ungültigen E-Mail-Adressen ab, die in der Spalte „EMAIL“ der Tabelle „EMPLOYEES“ in Oracle gespeichert sind.

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

Um die Liste der gültigen E-Mail-Adressen zu erhalten, löschen Sie in ähnlicher Weise NOT aus der obigen Abfrage.

Siehe auch:

  • Mit PL/SQL prüfen, ob eine Datei ein Bild ist