Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Datum Zeit Wert von Python an MySQL übergeben

Sie führen eine Abfrage mit Formatierungsparametern aus, übergeben diese aber nie; der % (start, next) Teil geht nach draußen der SQL-Abfrage:

cur_ca.execute("""
         select id,
     date_created,
     data
     from bureau_inquiry where date_created >= %s and date_created < %s
     """ % (start, next)
   )

Sie sollten jedoch besser SQL-Parameter verwenden, damit die Datenbank die Abfrage vorbereiten und den Abfrageplan wiederverwenden kann:

cur_ca.execute("""
         select id,
     date_created,
     data
     from bureau_inquiry where date_created >= ? and date_created < ?
     """, (start, next)
   )

PyODBC verwendet ? für SQL-Parameter.