Maison  >  Article  >  base de données  >  Explication détaillée des contraintes dans MySQL

Explication détaillée des contraintes dans MySQL

PHPz
PHPzoriginal
2024-02-22 14:24:04648parcourir

Explication détaillée des contraintes dans MySQL

Explication détaillée des contraintes dans MySQL

Dans la base de données MySQL, les contraintes sont des règles utilisées pour définir et limiter la plage de valeurs et l'intégrité des données des colonnes de la table. En ajoutant des contraintes aux colonnes lors de la création de la table, vous pouvez garantir l'exactitude et la cohérence des données. Cet article présentera les types de contraintes couramment utilisés dans MySQL et fournira des exemples de code spécifiques.

  1. PRIMARY KEY (contrainte de clé primaire)
    La clé primaire est un identifiant unique pour une colonne ou un groupe de colonnes dans une table. Ils garantissent l'unicité de chaque ligne du tableau. L’utilisation de la contrainte PRIMARY KEY peut garantir qu’il n’y a qu’une seule clé primaire dans une table et qu’il ne peut pas y avoir de valeurs en double.
    Voici un exemple qui montre comment ajouter une contrainte de clé primaire à une table :
CREATE TABLE students (
    id INT PRIMARY KEY,
    name VARCHAR(50),
    age INT
);
  1. FOREIGN KEY (Contrainte de clé étrangère)
    Les clés étrangères sont utilisées pour établir des relations entre plusieurs tables. Il s'agit d'une colonne ou d'un ensemble de colonnes qui font référence à la clé primaire d'une autre table pour garantir l'intégrité des données. Lorsqu'une contrainte FOREIGN KEY est définie sur une colonne de clé étrangère, MySQL vérifiera automatiquement si la valeur insérée ou mise à jour existe dans la table associée.
    Voici un exemple montrant comment ajouter une contrainte de clé étrangère à une table :
CREATE TABLE orders (
    order_id INT PRIMARY KEY,
    product_id INT,
    customer_id INT,
    FOREIGN KEY (product_id) REFERENCES products(product_id),
    FOREIGN KEY (customer_id) REFERENCES customers(customer_id)
);
  1. UNIQUE (Contrainte Unique)
    Une contrainte unique garantit qu'une colonne d'une table n'accepte que des valeurs uniques. Dans certains cas, vous souhaiterez peut-être ajouter une contrainte UNIQUE à une colonne pour éviter les valeurs en double.
    Ce qui suit est un exemple montrant comment ajouter une contrainte unique à une table :
CREATE TABLE employees (
    employee_id INT PRIMARY KEY,
    email VARCHAR(50) UNIQUE,
    department_id INT
);
  1. CHECK (contrainte de vérification)
    La contrainte CHECK est utilisée pour personnaliser la plage de valeurs des colonnes de la table. En utilisant les contraintes CHECK, vous pouvez garantir que seules les données répondant à des conditions spécifiques peuvent être insérées dans la table.
    Voici un exemple montrant comment utiliser les contraintes CHECK :
CREATE TABLE products (
    product_id INT PRIMARY KEY,
    product_name VARCHAR(50),
    quantity INT,
    price DECIMAL(10, 2),
    CONSTRAINT CHK_quantity CHECK (quantity >= 0),
    CONSTRAINT CHK_price CHECK (price > 0)
);
  1. DEFAULT (Contrainte par défaut)
    La contrainte DEFAULT est utilisée pour définir une valeur par défaut pour une colonne de sorte que lorsqu'une nouvelle ligne est insérée, si une valeur n'est pas fournie explicitement, il est automatiquement utilisé comme valeur par défaut.
    Ce qui suit est un exemple montrant comment ajouter des contraintes par défaut à une table :
CREATE TABLE users (
    user_id INT PRIMARY KEY,
    username VARCHAR(50),
    password VARCHAR(50) DEFAULT '123456',
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

Ce qui précède est une introduction aux types de contraintes couramment utilisés dans MySQL et comment les utiliser. L'utilisation de contraintes garantit l'intégrité et la cohérence des données dans votre base de données. En utilisant les contraintes de manière appropriée, les erreurs et les données incohérentes peuvent être réduites, et l'efficacité et la fiabilité de la base de données peuvent être améliorées. J'espère que cet article pourra vous aider à comprendre et à utiliser la fonction de contrainte de MySQL.

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