Maison  >  Article  >  base de données  >  Comment écrire des contraintes de vérification dans MySQL

Comment écrire des contraintes de vérification dans MySQL

小老鼠
小老鼠original
2023-09-25 17:44:231462parcourir

Méthode MySQL d'écriture des contraintes de vérification : 1. Utilisez le type de données ENUM Le type de données ENUM nous permet de définir une liste fixe de valeurs lors de la création d'une table, puis de limiter la valeur de la colonne à une valeur dans le. Par exemple, vous pouvez créer une colonne nommée sexe et la définir comme ENUM (« homme », « femme »), de sorte que la valeur de cette colonne ne puisse être que « homme » ou « femme » ; trigger, qui est un objet de base de données qui s'exécute automatiquement lorsque des événements spécifiques se produisent. Les déclencheurs peuvent être utilisés pour implémenter des contraintes de vérification plus complexes.

Comment écrire des contraintes de vérification dans MySQL

MySQL est un système de gestion de base de données relationnelle couramment utilisé qui fournit des fonctions riches pour garantir l'intégrité et la cohérence des données. L'un d'eux consiste à limiter la saisie et la modification des données via des contraintes pour garantir la validité des données. Cet article explique comment écrire des contraintes de vérification dans MySQL.

Dans MySQL, les deux méthodes suivantes peuvent être utilisées pour implémenter des contraintes de vérification :

1 Utilisation du type de données ENUM : Le type de données ENUM nous permet de définir une liste fixe de valeurs lors de la création d'une table, puis de la limiter. la valeur de la colonne à cette valeur A dans la liste. Par exemple, nous pouvons créer une colonne appelée sexe et la définir comme ENUM('Male', 'Female') afin que la valeur de la colonne ne puisse être que 'Male' ou 'Female'. Voici un exemple :

CREATE TABLE students (
    id INT PRIMARY KEY,
    name VARCHAR(50),
    gender ENUM('男', '女')
);

Dans l'exemple ci-dessus, la valeur de la colonne genre ne peut être que "masculin" ou "femelle". Si vous essayez d'insérer d'autres valeurs, MySQL signalera une erreur.

2. Utiliser des déclencheurs : un déclencheur est un objet de base de données qui s'exécute automatiquement lorsqu'un événement spécifique se produit. Nous pouvons utiliser des déclencheurs pour implémenter des contraintes de vérification plus complexes. Par exemple, disons que nous avons un tableau appelé étudiants qui contient une colonne d'âge et que nous souhaitons limiter l'âge entre 18 et 25 ans. Nous pouvons créer un déclencheur appelé check_age pour implémenter cette contrainte comme suit :

CREATE TRIGGER check_age
BEFORE INSERT ON students
FOR EACH ROW
BEGIN
    IF NEW.age < 18 OR NEW.age > 25 THEN
        SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = '年龄必须在18到25之间';
    END IF;
END;

Dans l'exemple ci-dessus, si une tentative est faite d'insérer une valeur avec un âge inférieur à 18 ou supérieur à 25, le déclencheur générera une erreur.

Il convient de noter que les déclencheurs ne peuvent être exécutés qu'au niveau de la table, pas au niveau de la colonne. Par conséquent, si vous souhaitez appliquer une contrainte de vérification sur une colonne spécifique, vous devez écrire la logique correspondante dans le déclencheur.

Pour résumer, MySQL propose plusieurs façons d'implémenter des contraintes de vérification, notamment en utilisant le type de données et les déclencheurs ENUM. En utilisant ces méthodes de manière rationnelle, nous pouvons garantir la validité et la cohérence des données et améliorer la qualité et la fiabilité de la base de données.

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!

Déclaration:
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