sql >> Base de Datos >  >> RDS >> Mysql

ProgramaciónError:no todos los argumentos convertidos durante el formato de cadena

Según la especificación de la base de datos de Python en PEP 249 , el formato utilizado en una consulta para mostrar dónde insertar los parámetros depende del paramstyle miembro del módulo de base de datos:

  • si es qmark , usa ? (signo de interrogación)
  • si es numeric , usa :1 , :2 etc. (estilo numérico, posicional)
  • si tiene named , usa :name (estilo con nombre)
  • si es format , usa %s (Códigos de formato de impresión ANSI C)
  • si es pyformat , utilice %(name)s (Códigos de formato extendido de Python)

AFAIR, MySQLdb usa format , entonces deberías reemplazar tu ? con %s .(Si MySQLdb usara correctamente declaraciones preparadas, sería qmark y ? era el camino correcto a seguir).