Maison > base de données > tutoriel mysql > MySQL peut-il utiliser des expressions régulières pour valider les numéros de téléphone ?

MySQL peut-il utiliser des expressions régulières pour valider les numéros de téléphone ?

Linda Hamilton
Libérer: 2024-11-20 20:58:13
original
424 Les gens l'ont consulté

Can MySQL Use Regular Expressions to Validate Phone Numbers?

Application de la validation des données avec des expressions régulières dans MySQL

MySQL peut-il utiliser des expressions régulières pour garantir l'intégrité des données, en particulier dans les cas où un champ tel que « numéro de téléphone » nécessite des paramètres de validation spécifiques ?

Oui, MySQL offre la possibilité d'utiliser des expressions régulières pour les données validation. Contrairement à la contrainte restreinte CHECK, MySQL utilise des déclencheurs pour assurer la cohérence des données. En implémentant des déclencheurs, vous pouvez spécifier des contraintes d'expression régulière, garantissant ainsi que les données sont conformes à des critères prédéterminés.

Voici un exemple pratique :

Pour appliquer une validation de numéro de téléphone à l'aide expression régulière (Par exemple, les nombres doivent être au format 64-221221442) :

CREATE TABLE data (
  phone varchar(100)
);

DELIMITER $$
CREATE TRIGGER trig_phone_check BEFORE INSERT ON data
FOR EACH ROW
BEGIN
IF (NEW.phone REGEXP '^(\+?[0-9]{1,4}-)?[0-9]{3,10}$' ) = 0 THEN
  SIGNAL SQLSTATE '12345'
     SET MESSAGE_TEXT = 'Wroooong!!!';
END IF;
END$$
DELIMITER ;
Copier après la connexion

Avec ce déclencheur dans place, toute tentative d'insérer un numéro de téléphone qui n'est pas conforme au format spécifié (par exemple 64-22122 WRONG 1442) déclenchera une erreur, empêchant les données incorrectes d'entrer dans la base de données.

Bien que MySQL permette une telle validation mécanismes, il est important de se rappeler que la validation des données ne doit pas reposer uniquement sur la couche base de données. Des mécanismes de validation complets doivent être mis en œuvre tout au long de l'application à différents niveaux.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal