Maison > base de données > tutoriel mysql > Comment récupérer les noms de colonnes d'un jeu de résultats de requête MySQL en Python à l'aide de MySQLdb ?

Comment récupérer les noms de colonnes d'un jeu de résultats de requête MySQL en Python à l'aide de MySQLdb ?

Mary-Kate Olsen
Libérer: 2024-11-05 08:41:02
original
384 Les gens l'ont consulté

How to retrieve column names from a MySQL query result set in Python using MySQLdb?

MySQL : récupérer les en-têtes de colonnes à partir des résultats de la requête

Question :

Comment pouvons-nous récupérer noms de colonnes ou alias d'un jeu de résultats de requête MySQL en Python à l'aide de MySQLdb ? L'exigence est que les noms de colonnes dans le jeu de résultats doivent correspondre aux colonnes sélectionnées spécifiées dans la requête SQL.

Réponse :

Pour récupérer les noms de colonnes ou les alias d'un Ensemble de résultats de requête MySQL à l'aide de MySQLdb, suivez ces étapes :

  1. Exécutez l'instruction de requête MySQL à l'aide de curseur.execute().
  2. Utilisez curseur.description pour obtenir un tuple de tuples représentant le métadonnées de chaque colonne du jeu de résultats. Le premier élément de chaque tuple ([0]) est le nom ou l'alias de la colonne.
  3. Pour obtenir le nombre de colonnes renvoyées par la requête, utilisez len(cursor.description).

Exemple de code :

<code class="python"># Python

import MySQLdb

# Connect to MySQL
db = MySQLdb.connect(host="myhost", user="myuser", passwd="mypass",db="mydb")

# Execute the query
sql = """
    SELECT ext,
        SUM(size) AS totalsize,
        COUNT(*) AS filecount
    FROM fileindex
    GROUP BY ext
    ORDER BY totalsize DESC;
"""
cursor = db.cursor()
cursor.execute(sql)

# Get column names
column_names = [i[0] for i in cursor.description]

# Print results
while (1):
    row = cursor.fetchone ()
    if row == None:
        break
    print("%s %s %s\n" % (row[0], row[1], row[2]))

# Get number of columns
num_fields = len(cursor.description)

# Close cursor and database connection
cursor.close()
db.close()      

print("Number of columns:", num_fields)
print("Column names:", column_names)</code>
Copier après la connexion

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