Profilo di vince

Nome vince
Indirizzo email n/a
Messaggi3
  • Re: Inserimento numeri Reali nel database
    Forum >> Programmazione Python >> Database
    Si converto la stringa con il metodo split(";"), in questo modo ottengo una lista che in seguito il cursore utilizza per popolare la tabella.
  • Re: Inserimento numeri Reali nel database
    Forum >> Programmazione Python >> Database
    Ciao,
    grazie per la risposta.

    Comunque ho capito che il problema era la virgola, per cui utilizzo il metodo replace per sostituirle con il punto, adesso funziona.

    Saluti
  • Inserimento numeri Reali nel database
    Forum >> Programmazione Python >> Database
    Buongiorno,



    sono Vincenzo e da pochissimo ho iniziato a studiare Python ed SQLite per lavoro.




    Sono riuscito con non poche difficoltà a trasferire i dati da un file .txt all'interno di una tabella in un database SQLite ma i numeri con la virgola vengono convertiti in stringhe nonostante abbia provato sia con FLOAT che con REAL.




    Posto il codice, mi scuso anticipatamente ma non trovo i tag per postare codice:


    testo = open("Report1 - ARTICOLI.txt")

    contenuto=testo.read()

    numeroRighe=contenuto.count("\n")

    testo.seek(0)



    import sqlite3

    conn = sqlite3.connect('database.sqlite')

    cur = conn.cursor()

    cur.execute('DROP TABLE IF EXISTS Prodotti')

    cur.execute('CREATE TABLE Prodotti (Codice INTEGER, Iva INTEGER, UM TEXT, Imb INTEGER, Str INTEGER, Pal INTEGER, Pubblico REAL, Codice a Barre INTEGER, Descrizione TEXT, Mag INTEGER, Cllist TEXT, Cessione REAL, UMO TEXT, TMC INTEGER, Peso Medio REAL)')

    conn.close()

    conn = sqlite3.connect('database.sqlite')

    cur = conn.cursor()

    for i in range(10):

    contenuto = testo.readline()

    lista=contenuto.split(";")

    cur.execute('INSERT INTO Prodotti (Codice, Iva, UM, Imb, Str, Pal, Pubblico, Codice a Barre, Descrizione, Mag, Cllist, Cessione, UMO, TMC, Peso Medio) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? )', (lista0, lista2, lista3, lista4, lista5, lista6, lista7, lista8, lista9, lista10, lista12, lista13, lista14, lista15, lista18))

    conn.commit()





    Il risultato, se provo a stampare il valore della lista in posizione 6 è il seguente:




    ' 9.49'




    Any ideas?