Forum
>>
Principianti
>>
xlsx writer, inserimento dei record di sqlite3 in una tabella exel
Pagina: 1
Esegui il login per scrivere una risposta.
Pagina: 1
Scritto da PyAttilio |
2020-05-17 13:11:37 - xlsx writer, inserimento dei record di sqlite3 in una tabella exel
|
ciao a tutti qualcuno riesce ad aiutarmi ? devo popolare una tabella con i record del database sqlite3,sono principiante quindi scusate per il mio codice :
def interazioneexeltest(): conn = sqlite3.connect("databaseG.db") c = conn.cursor() c.execute("""SELECT nome,cognome,ragione_sociale,descrizione,data_in,data_out FROM ordini INNER JOIN clienti ON clienti.id = id_cliente INNER JOIN lavorazioni ON lavorazioni.id = id_lavorazione """) records = c.fetchall() conn.commit() conn.close() cartella = Workbook('output2.xlsx') # creo il file foglio = cartella.add_worksheet() # creo il primo foglio for nome, cognome, ragione_sociale, descrizione, data_in, data_out in records: foglio.write_row('B2', 'nome'0) foglio.write_row('B3', 'cognome'1) foglio.write_row('B4', 'ragione_sociale'2) foglio.write_row('B5', 'descrizione'3) foglio.write_row('B6', 'data_in'4) foglio.write_row('B7', 'data_out'5) foglio.set_column('B:H', 12) # definisco la larghezza dei campi foglio.add_table('B1:H7', {'autofilter': 0}) # definisco la tabella cartella.close() # chiudo il file os.startfile("output2.xlsx", "open") |
|
Scritto da Daniele aka Palmux |
2020-05-19 22:24:05 - Re: xlsx writer, inserimento dei record di sqlite3 in una tabella exel
|
Ciao caro, sono un po' tardo, ma qual'è la domanda?
Perché se la domanda fosse: "Provate ad usare il mio codice, guardate gli effetti e correggete i difetti", beh non sarebbe la strada corretta. Prova a capire se c'è qualcosa che non va nel tuo codice, individua la parte incriminata e concentrati su quella coinvolgendo a quel punto il forum per aiutarti. Postare il tuo codice senza contestualizzare un problema è, a mio avviso ovviamente, del tutto controproducente per il tuo cammino di apprendimento. Inoltre, questo vale sempre come regola generale, indica che versione stai usando di Python, su che piattaforma, insomma dai più informazioni possibili. Invece un bel per te per aver formattato in maniera corretta il codice, bravo. Cya |
|
Scritto da PyAttilio |
2020-05-19 23:26:11 - Re: xlsx writer, inserimento dei record di sqlite3 in una tabella exel
|
Ciao e grazie per la risposta, allora sto utilizzando python 3.7 su Windows 10, vorrei inserire dei records in una tabella exel creandola con il modulo xlsx writer, sono riuscito a trovare un ciclo for, su internet, che mi scrive i record nel documento exel ma vorrei inserirli in una tabella. Quindi sto studiando ma questo ciclo for nn lo capisco....cioè a livello didattico riesco a capirlo ma questo che ho trovato è diverso)inoltre ho quasi finito il mio primo programma(nella vita faccio tutt altro) e questo è il mio penultimo problema da risolvere poi mi dedicherò di nuovo allo studio ma ora sono impaziente di finirlo aiutatemi
|
|
Scritto da Daniele aka Palmux |
2020-05-20 23:31:51 - Re: xlsx writer, inserimento dei record di sqlite3 in una tabella exel
|
Alla fine se siamo qui è per aiutare.
Ma forse non sono stato chiaro, ti chiedo scusa, provo a spiegarmi meglio ed in maniera sintetica. Cerca di isolare il problema e fare la domanda specifica solo su quella parte, postando anche l'eventuale errore che ottieni. Partiamo da qui e vedrai che il suggerimento sarà utile per te e non risulterà frustrante per chi ti vuole aiutare. Cya |
|
Scritto da PyAttilio |
2020-05-22 14:25:17 - Re: xlsx writer, inserimento dei record di sqlite3 in una tabella exel
|
Allora come da titolo devo inserire i record di una query sqlite3 in una tabella di exel(creando lo stesso documento exel con il modulo xlsx-writer) . Sono riuscito con questo codice a inserire i record in exel :
def interazioniexel(): conn = sqlite3.connect("databaseG.db") c = conn.cursor() mysel=c.execute("""SELECT ordini.oid,nome,cognome,ragione_sociale,descrizione,data_out,prezzo FROM ordini INNER JOIN lavorazioni ON lavorazioni.id = id_lavorazione INNER JOIN clienti ON clienti.id = id_cliente WHERE clienti.oid = """ + ldel.get()) workbook = Workbook('output2.xlsx') worksheet = workbook.add_worksheet() # questo codice funziona ma vorrei capirne il funzionamento e aggiungere una tabella con i record for i, row in enumerate(mysel): for j, value in enumerate(row): worksheet.write(i, j, rowj) workbook.close() os.startfile("output2.xlsx", "open") ho cercato sulla documentazione xlsx writer ma ho trovato solamente come si creano le tabelle e non saprei come inserire anche i records. P.S: il codice del ciclo 'for' non l'ho scritto io e non riesco a capirlo anche se sto studiando il ciclo for, quindi sarebbe bello se qualcuno riuscisse a spiegarmi il codice che ho copiato e magari a migliorarlo per fare andare i record nella tabella direttamente . Grazie e spero di essere stato chiaro |
|
Scritto da Daniele aka Palmux |
2020-05-22 19:59:21 - Re: xlsx writer, inserimento dei record di sqlite3 in una tabella exel
|
A mio modesto parere devi fare un passo indietro, prenderti un buon testo (più di quello che utilizzi ora) e studiarti con attenzione i fondamenti del linguaggio. Trovare un codice online, chiedere a qualcuno di spiegartelo, beh non è un approccio corretto, per nulla.
Parti da qui, vedrai che troverai tanti spunti interessanti. Cya |
Pagina: 1
Esegui il login per scrivere una risposta.