Bagaimanakah saya boleh mendapatkan pengepala lajur daripada pertanyaan MySQL menggunakan Python?

Patricia Arquette
Lepaskan: 2024-11-06 20:30:03
asal
915 orang telah melayarinya

How can I retrieve column headers from a MySQL query using Python?

Mendapatkan Maklumat Lajur daripada Pertanyaan MySQL

Apabila membangunkan aplikasi Python menggunakan MySQLdb, satu tugas biasa adalah untuk melaksanakan pertanyaan SQL dan mendapatkan semula yang terhasil nama lajur dan nilai. Secara lalai, cursor.fetchall() hanya mengembalikan data tanpa maklumat lajur.

Untuk mendapatkan pengepala lajur, gunakan atribut cursor.description. Ia menyediakan tuple tuple, di mana setiap tuple dalam mengandungi maklumat tentang lajur. Elemen pertama setiap tuple dalam ialah pengepala lajur.

Untuk menggambarkan lajur yang ditentukan pengguna dengan tepat dalam pertanyaan SQL, pertimbangkan langkah berikut:

<code class="python">cursor.execute(sql)
num_fields = len(cursor.description)
field_names = [i[0] for i in cursor.description]</code>
Salin selepas log masuk

Kod ini mendapatkan semula bilangan lajur dalam hasil pertanyaan dan mencipta senarai pengepala lajur daripada atribut cursor.description.

Dalam contoh Python khusus anda, anda boleh mengubah suai kod untuk mengekstrak nama lajur:

<code class="python">import MySQLdb

# Connect to MySQL

db = MySQLdb.connect(...)

# Execute the query

cursor = db.cursor()
cursor.execute("""
select ext,
       sum(size) as totalsize,
       count(*) as filecount
from fileindex
group by ext
order by totalsize desc;
""")

# Get column headers

num_fields = len(cursor.description)
field_names = [i[0] for i in cursor.description]

# Fetch and print the results

while (1):
    row = cursor.fetchone()
    if row == None:
        break
    print(" ".join("{}={}".format(field_names[i], row[i]) for i in range(num_fields)))

cursor.close()
db.close()</code>
Salin selepas log masuk

Kod dipertingkat ini kini mengambil dan mencetak kedua-dua pengepala lajur dan nilai data yang sepadan dengan betul untuk setiap baris.

Atas ialah kandungan terperinci Bagaimanakah saya boleh mendapatkan pengepala lajur daripada pertanyaan MySQL menggunakan Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!