Maison > base de données > tutoriel mysql > le corps du texte

Comment MySQL gère-t-il les contraintes ?

PHPz
Libérer: 2023-08-27 15:45:08
avant
642 Les gens l'ont consulté

MySQL 如何处理约束?

Comprenons comment MySQL gère les contraintes -

MySQL nous aide à gérer les tables transactionnelles (la restauration est autorisée) et les tables non transactionnelles (la restauration n'est pas autorisée (la restauration n'est pas autorisée)). C'est pourquoi MySQL gère les contraintes différemment des autres SGBD. Dans une base de données non transactionnelle, si une erreur se produit lors de l'insertion ou de la mise à jour de plusieurs lignes, il n'existe aucun moyen de revenir en arrière. Cette situation doit être gérée de la bonne manière.

MySQL Server génère des erreurs pour les requêtes qui détectent les erreurs lors de l'analyse de l'instruction qui doit être exécutée. Une fois qu'une erreur est détectée, il tente de récupérer de l'erreur lors de l'exécution de l'instruction. Cela n'est pas actuellement fait pour toutes les déclarations.

MySQL peut arrêter une instruction au milieu ou la récupérer et continuer lorsqu'une erreur se produit. Par défaut, le serveur récupère et continue.

Les clés étrangères permettent de croiser les données entre les tables, et les contraintes de clé étrangère permettent de garantir que ces données dispersées restent cohérentes.

Références de clés étrangères

MySQL prend en charge les références de clés étrangères ON UPDATE et ON DELETE dans les instructions CREATE TABLE et ALTER TABLE.

Opérations de référence

Les opérations de référence disponibles sont - RESTRICT, CASCADE, SET NULL et NO ACTION.

NO ACTION est l'opération de référence par défaut. La valeur

ENUM

ENUM doit être la valeur répertoriée dans la définition de la colonne, ou le numéro interne équivalent. La valeur ne peut pas être une valeur d'erreur (0 ou chaîne vide). Pour une colonne définie comme ENUM('a','b','c'), les valeurs autres que 'a', 'b' ou 'c', telles que '', 'd' ou 'ax' sont considéré comme invalide et rejeté.

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:tutorialspoint.com
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal