Tengo un problema extraño en el que no puedo obtener una consulta SQL con un parámetro para que funcione con una comparación de cadenas en la cláusula where; no obtengo una fila. cuando me conecto a la base de datos MySQL a través de bash, la consulta funciona.
funciona (obteniendo mi fila):
select * from my_table where my_column = 'my_string';
también funciona (obteniendo mi fila):
cursor.execute(
"""
select *
from my_table
where my_column = 'my_string'
"""
)
no funciona ( cursor.fetchall()
es []
):
cursor.execute(
"""
select *
from my_table
where my_column = '%s'
""",
('my_string')
)
Tenga cuidado con las tuplas. Creo que lo necesitas ('my_string',)
.
Para su información, escribí el comentario original mencionado por @tscherg en su comentario debajo de la pregunta.
Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.
En caso de infracción, por favor [email protected] Eliminar
Déjame decir algunas palabras