Grałem około z sqlite3 i dostaję sqlite3.OperationalError: w pobliżu „słodki”: błąd składni dla tej linii mojego kodu query_cursor.execute("INSERT INTO mcdonalds_menu VALUES(%d, %s, %f, %s, %d)" % (ids[num],names[num], price[num], descriptions[num], calories[num]))
Kiedy kładę się w wartościach 3 oddzielne zapytania wydaje się, że kod działa, ale staram się, aby mój kod był bardziej SUROWY, używając pętli for. Kod do tej pory:ciąg formatowanie kwerendy SQL w sqlite3
import sqlite3
filename = sqlite3.connect("McDonalds_Menu.db")
query_cursor = filename.cursor()
def create_table():
query_cursor.execute("CREATE TABLE mcdonalds_menu (id INTEGER, name VARCHAR(20), price DECIMAL(3, 2), description TEXT, calories INTEGER)")
ids = range(1,4)
names = ["McFlurry", "Fillet-o-Fish", "McCafe"]
price = 1.50, 2.25, 0.99
descriptions = ["Delicious sweet icecream", "Best fish in the sea", "Freshly brewed Colombian coffee"]
calories = 220, 450, 75
def data_entry():
for num in xrange(3):
query_cursor.execute("INSERT INTO mcdonalds_menu VALUES(%d, %s, %f, %s, %d)" % (ids[num], names[num], price[num], descriptions[num], calories[num]))
filename.commit()
if __name__ == "__main__":
create_table()
data_entry()
Czy można sformatować zapytanie sql za pomocą pętli?
Dziękuję, rozwiązał mój problem. –
Nie ma za co. Cieszę się, że to działało! – Grokify