Anda harus meneruskan pernyataan SQL dan parameter sebagai argumen terpisah:
cursor.execute(loggit[0], loggit[1])
atau gunakan sintaks argumen variabel (percikan, *
)
:
cursor.execute(*loggit)
Versi Anda mencoba meneruskan tuple yang berisi pernyataan SQL dan mengikat parameter sebagai satu-satunya argumen, di mana .execute()
function mengharapkan untuk menemukan hanya string pernyataan SQL.
Lebih biasa memisahkan keduanya dan mungkin hanya menyimpan pernyataan SQL dalam sebuah variabel:
loggit = """
INSERT INTO logger (logged_info, dummy)
VALUES
(%s, %s)
"""
cursor.execute(loggit, (bob, dummyVar))