Maison > base de données > tutoriel mysql > Comment générer une colonne séquentielle basée sur une clé étrangère dans MySQL ?

Comment générer une colonne séquentielle basée sur une clé étrangère dans MySQL ?

Susan Sarandon
Libérer: 2024-11-18 20:17:02
original
569 Les gens l'ont consulté

How to Generate a Sequential Column Based on a Foreign Key in MySQL?

Ajout d'une colonne de séquence basée sur une clé étrangère

Pour obtenir une colonne séquentielle basée sur une clé étrangère dans MySQL, vous pouvez utiliser ce qui suit Approche SQL :

Créer un déclencheur avant de l'insérer dans la table :

CREATE TRIGGER trg_mytable_bi
BEFORE INSERT ON mytable
FOR EACH ROW
BEGIN
      DECLARE nseq INT;
Copier après la connexion

Récupérer le numéro de séquence maximum existant pour la clé étrangère correspondante :

      SELECT  COALESCE(MAX(seq), 0) + 1
      INTO    nseq
      FROM    mytable
      WHERE   account = NEW.account;
Copier après la connexion

Attribuer le numéro de séquence calculé à la nouvelle ligne :

      SET NEW.seq = nseq;
END;
Copier après la connexion

En utilisant ce déclencheur, chaque ligne nouvellement insérée se verra attribuer un numéro de séquence qui s'incrémente pour la clé étrangère spécifiée, comme illustré dans l'exemple fourni.

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