2016-12-04 5 views
-1

Ich habe ein Problem mit, um Daten in sqlite3 zu senden. Dies ist mein Code:Während True mit Sqlite3

date = raw_input("Enter date: ") 

f_name = [] 
s_name = [] 

def enter(): 
    while True: 
     f = raw_input("Enter name: ") 
     e = raw_input("Enter second name: ") 

     if len(f) == 0: 
      break 
     elif len(e) == 0: 
      break 
     else: 
      a = f 
      f_name.append(a) 
      y = e 
      s_name.append(y) 

    zipped = zip(f_name, s_name) 

    c.executemany("INSERT INTO test_table(first_name, " 
       "second_name, date) VALUES(?, ?, ?)", 
       (zipped, date)) 
    conn.commit() 

create_table() 
enter() 
conn.close() 

Nur was ich brauche ist, während wahre Schleife bis zum Anschlag arbeiten müssen, und in jeder Iteration der Schleife, senden Daten: Vorname, Name und Datum.

+0

Sie nie etwas 'f_name' zuweisen und' s_name'. –

+0

Warum zippen Sie die Listen? Muss das in sqlite eingefügt werden? –

+0

Also wie kann ich einfügen wenn ich die Listen nicht zippen will? – roman

Antwort

0

Sie müssen in Ihrem while True 2 weitere while Schleifen verwenden, schauen Sie sich den folgenden Code:

my_date = raw_input("Enter date: ") 

f_name = [] 
s_name = [] 

def enter(): 
    while True: 
     fn = raw_input("Enter name: ") 
     while not fn: # You do not need to use len(fn) == 0 
      fn = raw_input("Enter name: ") 

     sn = raw_input("Enter second name: ") 
     while not sn: 
      sn = raw_input("Enter second name: ") 

     f_name.append(fn) 
     s_name.append(sn) 

    zipped = zip(f_name, s_name) 
    zipped = [item + (my_date,) for item in zipped] # You need to my_date to each item in zipped 

    c.executemany(""" 
     INSERT INTO test_table ('first_name', 'second_name', 'date') 
     VALUES(?, ?, ?)""", zipped) 
    # ... 
+0

Fehler: sqlite3.ProgrammingError: Falsche Anzahl der bereitgestellten Bindungen. Die aktuelle Anweisung verwendet 3, und es gibt 1 geliefert – roman

+0

@roman Werfen Sie einen Blick auf meine bearbeitete Antwort. – ettanany

+0

Arbeit! Danke für die Hilfe! – roman

Verwandte Themen