Tengo el siguiente:usando Python para escribir consulta MySQL a csv, tienen que mostrar nombres de campo
import MySQLdb as dbapi
import sys
import csv
dbServer='localhost'
dbPass='supersecretpassword'
dbSchema='dbTest'
dbUser='root'
dbQuery='SELECT * FROM pbTest.Orders;'
db=dbapi.connect(host=dbServer,user=dbUser,passwd=dbPass)
cur=db.cursor()
cur.execute(dbQuery)
result=cur.fetchall()
c = csv.writer(open("temp.csv","wb"))
c.writerow(result)
Ésta es ilegible produce un desastre. Estoy familiarizado con el uso de la impresión de registro [0], etc. No estoy seguro de cómo debo comenzar a configurar el formateo. para producir algo así como lo haría una consulta en una consola. No puedo hacer un INTO OUTFILE simple desde el servidor mysql.
eso es genial, ¿alguna idea de cómo puedo escribir los nombres de campo también? – Mathnode
@teatime - Puede obtener los nombres de campo de 'result [0] .keys' (o equivalentemente' row.keys'. – mtrw
Desafortunadamente, esta respuesta no responde completamente el título de la pregunta ("necesidad de mostrar los nombres de los campos"). El comentario de @ mtrw ayuda, pero no es aplicable al código dado (el objeto tuple no tiene atributos 'claves'). Podría ser aplicable si el cursor fuera un cursor de diccionario, es decir, creado usando 'dbconn.cursor (dictionary = True)'. – LarsH