Maison > base de données > tutoriel mysql > Comment puis-je concaténer des chaînes avec des ID de clé primaire lors de l'insertion dans MySQL ?

Comment puis-je concaténer des chaînes avec des ID de clé primaire lors de l'insertion dans MySQL ?

Barbara Streisand
Libérer: 2024-11-09 21:43:02
original
985 Les gens l'ont consulté

How can I concatenate strings with primary key IDs during insertion in MySQL?

Concaténation de chaînes avec des identifiants de clé primaire lors de l'insertion

Question :

Lors de l'insertion de données dans une table d'utilisateurs MySQL, vous souhaitez créer des noms d'utilisateurs qui suivent un format spécifique : 'user' userId, où userId est le champ de clé primaire à incrémentation automatique. Comment pouvez-vous y parvenir efficacement ?

Réponse :

La concaténation d'une chaîne avec une clé primaire auto-incrémentée lors de l'insertion nécessite une approche en deux étapes :

Méthode 1 (pour les incréments non automatiques IDs):

  • Spécifiez le nom d'utilisateur souhaité dans votre code PHP en concaténant 'user' avec l'ID de l'utilisateur.
  • Passez ce nom d'utilisateur concaténé comme paramètre d'insertion.

Méthode 2 (pour l'incrémentation automatique ID) :

  • Effectuez l'insertion initiale dans la table comme d'habitude.
  • Exécutez une instruction UPDATE immédiate pour mettre à jour le champ du nom d'utilisateur avec la concaténation de 'user' et du clé primaire auto-incrémentée obtenue à partir de la précédente insertion.

Remarque :

  • Tenter d'utiliser des colonnes générées dans MySQL 5.7 pour y parvenir donnera une erreur : "Colonne générée 'nom d'utilisateur' ne peut pas faire référence à une colonne d'auto-incrémentation."
  • Concaténation de chaînes avec des ID de clé primaire qui ne s'auto-incrémentent pas n'est pas un problème.

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 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