2017-11-18 2 views
0

Ich versuche, zwei Werte in einer Tabelle durch Aufrufen von Funktionen einer Datei hinzuzufügen. Die Datei hat folgenden Code:OperationalError: nahe "?": Syntaxfehler sqlite3 Fehler

import sqlite3 
con = sqlite3.Connection('rdb') 
cur = con.cursor() 
def insert(s): 
    cur.execute("create table if not exists customerorder(no number primary 
    key,menuitems varchar(40))") 
    c=1 
    for i in s: 
     print c 
     print i 
     cur.execute("insert into customerorder(?,?)",(int(c),i)) 
     c += 1 

def fetch(): 
    cur.execute("select * from customerorder") 
    print cur.fetchall() 

Hier ist 's' eine Liste. Mit s [0] = 'einfaches Buch' und s [1] = 'Buch buchen'.

Antwort

1
insert into customerorder(?,?) 

Sie müssen dies wie

insert into customerorder values(?,?) 

die erste Liste in Pars etwas ändern, nachdem ein Tabellenname eine Liste von Spalten ist, und Sie können nicht ? Variablen für Spaltennamen haben.

Verwandte Themen