2017-04-15 4 views
0

エラー:sqlite3.OperationalError:表zaradaは13列を有しているが、14個の値が供給されたパイソンsqlite3.OperationalError

backend1.py:

import sqlite3 

def konekcija(): 
    conn=sqlite3.connect("zarada.db") 
    cur=conn.cursor() 
    cur.execute("CREATE TABLE IF NOT EXISTS zarada (id INTEGER PRIMARY KEY, ime TEXT, prezime TEXT, JMBG TEXT, neto DECIMAL, bruto DECIMAL, pioZaposleni DECIMAL, pioPoslodavac DECIMAL, zdravstvoZaposleni DECIMAL, zdravstvoPoslodavac DECIMAL, nezaposlenostZaposleni DECIMAL, nezposlensotPoslodavac DECIMAL, porez DECIMAL ukupno DECIMAL)") 
    conn.commit() 
    conn.close() 

def unesi(ime, prezime, jmbg, neto, bruto, pioZaposleni, pioPoslodavac, zdravstvoZaposleni, zdravstvoPoslodavac, nezaposlenostZaposleni, nezposlensotPoslodavac, porez, ukupno): 
    conn=sqlite3.connect("zarada.db") 
    cur=conn.cursor() 
    cur.execute("INSERT INTO zarada VALUES(NULL, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", (ime, prezime, jmbg, neto, bruto, pioZaposleni, pioPoslodavac, zdravstvoZaposleni, zdravstvoPoslodavac, nezaposlenostZaposleni, nezposlensotPoslodavac, porez, ukupno)) 
    conn.commit() 
    conn.close() 

konekcija() 

frontend.py:

def unesiKomanda(): 
    backend1.unesi(imeVar, prezimeVar, jmbgVar,neto, bruto, pioIznos1, pioIznos2, zdravstvoIznos1, zdravstvoIznos2, nezaposlenostIznos1, nezaposlenostIznos2, porezIznos, bruto2iznos) 

backend1.unesiをprint関数に置き換えると、次の結果が得られます。

Name LastName idnumber 50000.0 69757.48930099858 9766.048502139802 8370.89871611983 3487.8744650499293 3487.8744650499293 488.3024251069901 488.302425106 
9901 5875.748930099859 81965.04992867332 

13個の値があり、何か不足しています。

+0

。 –

答えて

0

あなたはここにカンマが含まれていない:

porez DECIMAL ukupno DECIMAL 

は基本的にあなたが13列を作成し、その後14個の引数に移入しようとしています。プライマリキーのID列もカウントされます。

あなたのクエリは次のようになります。私は、彼らはHTMLやJavaScriptとは何の関係も持た​​ない、コードスニペットを削除

cur.execute("CREATE TABLE IF NOT EXISTS zarada (id INTEGER PRIMARY KEY, ime TEXT, prezime TEXT, JMBG TEXT, neto DECIMAL, bruto DECIMAL, pioZaposleni DECIMAL, pioPoslodavac DECIMAL, zdravstvoZaposleni DECIMAL, zdravstvoPoslodavac DECIMAL, nezaposlenostZaposleni DECIMAL, nezposlensotPoslodavac DECIMAL, porez DECIMAL, ukupno DECIMAL)") 
関連する問題