Ho il seguente:con Python di scrivere query MySQL in formato CSV, hanno bisogno di mostrare i nomi dei campi
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)
Questo è produce un pasticcio confuso. Ho familiarità con l'utilizzo del record di stampa [0], ecc. Non sono sicuro di come procedere per impostare la formattazione. per produrre qualcosa di simile a una query in una console. Non riesco a creare un semplice INTO OUTFILE dal server mysql.
questo è fantastico grazie, qualche idea su come posso scrivere anche i nomi dei campi? – Mathnode
@teatime - È possibile ottenere i nomi di campo da 'result [0] .keys' (o equivalentemente' row.keys'. – mtrw
Sfortunatamente, questa risposta non risponde completamente al titolo della domanda ("necessità di mostrare i nomi dei campi"). @ Il commento di mtrw aiuta, ma non è applicabile al codice dato (l'oggetto tupla non ha 'chiavi' di attributo). Potrebbe essere applicabile se il cursore fosse un cursore dizionario, cioè creato usando 'dbconn.cursor (dictionary = True)'. – LarsH