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

Indsættelse af variabler MySQL ved hjælp af Python, fungerer ikke

Du skal sende SQL-sætningen og parametrene som separate argumenter:

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

eller brug variabel argumentsyntaks (en splat, * ) :

cursor.execute(*loggit)

Din version forsøger at sende en tuple, der indeholder SQL-sætningen og bindeparametre som det eneste argument, hvor .execute() funktion forventer kun at finde SQL-sætningsstrengen.

Det er mere normalt at holde de to adskilte og måske kun gemme SQL-sætningen i en variabel:

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



  1. Hvordan bruger man billeder i Android SQLite, der er større end begrænsningerne for et CursorWindow?

  2. Hvordan beder man javascript vente på, at mysql tildeler værdi til php-variabel?

  3. Hvordan får man Django til at fungere med ikke-understøttede MySQL-drivere såsom gevent-mysql eller Concurrence's MySQL-driver?

  4. 25 Microsoft Access-genveje for at spare tid i tabeller i dataarkvisning