Mysql
 sql >> Database >  >> RDS >> Mysql

Inserimento di variabili MySQL utilizzando Python, non funzionante

Devi passare l'istruzione SQL ei parametri come argomenti separati:

cursor.execute(loggit[0], loggit[1])

oppure usa la sintassi dell'argomento variabile (a splat, * ) :

cursor.execute(*loggit)

La tua versione tenta di passare una tupla contenente l'istruzione SQL e di associare parametri come unico argomento, dove .execute() la funzione si aspetta di trovare solo la stringa dell'istruzione SQL.

È più comune mantenere i due separati e forse memorizzare solo l'istruzione SQL in una variabile:

loggit = """
        INSERT INTO logger (logged_info, dummy)
        VALUES
            (%s, %s)
    """
cursor.execute(loggit, (bob, dummyVar))