Maison > base de données > tutoriel mysql > Comment puis-je parcourir dynamiquement les noms de colonnes MySQL à l'aide d'une procédure stockée ?

Comment puis-je parcourir dynamiquement les noms de colonnes MySQL à l'aide d'une procédure stockée ?

DDD
Libérer: 2024-12-30 12:35:13
original
1002 Les gens l'ont consulté

How Can I Dynamically Iterate Through MySQL Column Names Using a Stored Procedure?

Itérer dynamiquement les noms de colonnes dans une table MySQL

Cette question explore une méthode pour parcourir les noms de colonnes dans une table MySQL à l'aide d'un procédure écrite en SQL natif. Le but est d'obtenir une liste de noms de colonnes, puis d'exécuter une procédure stockée basée sur chaque nom de colonne en tant que variable.

Récupération des noms de colonnes

Pour récupérer les noms de colonnes à partir d'une table MySQL, utilisez la commande SHOW COLUMNS FROM commande. Cette commande renvoie un jeu de résultats contenant des informations sur les colonnes de la table, y compris leurs noms.

Parcourir les noms de colonnes

Une fois les noms de colonnes récupérés, ils peuvent être stockés en boucle à l'aide d'un curseur. Un curseur est un itérateur qui permet de parcourir un ensemble de résultats ligne par ligne. Voici un exemple :

DECLARE col_names CURSOR FOR
  SELECT column_name
  FROM INFORMATION_SCHEMA.COLUMNS
  WHERE table_name = 'tbl_name'
  ORDER BY ordinal_position;
Copier après la connexion

Ce curseur sélectionne les noms de colonnes de la table spécifiée, les classe selon leur position et nomme le curseur col_names.

Exécuter une boucle

Pour parcourir les noms de colonnes et exécuter une procédure stockée, utilisez ce qui suit loop:

SET i = 1;
the_loop: LOOP

  IF i > num_rows THEN
    CLOSE col_names;
    LEAVE the_loop;
  END IF;

  FETCH col_names 
  INTO col_name;     

   //do whatever else you need to do with the col name

  SET i = i + 1;  
END LOOP the_loop;
Copier après la connexion

Cette boucle utilise une instruction FETCH pour récupérer le nom de la colonne suivante dans une variable col_name. À l'intérieur de la boucle, toutes les actions nécessaires basées sur le nom de la colonne peuvent être effectué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!

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