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

¿Cómo puedo escapar de la entrada a una base de datos MySQL en Python3?

Aunque la respuesta "resuelta" funciona, no es la mejor práctica. Al usar una biblioteca que se ajuste a Python DBI, debe usar variables de vinculación en lugar de formatear una cadena y pasarla para que se ejecute. Hay peligros inherentes a esa metodología.

Por lo tanto, esta es la forma correcta de hacerlo:

cursor.execute("SELECT * FROM `Codes` WHERE `ShortCode` = %s", text)

Tenga en cuenta que no se trata de una cadena de formato, sino de una variable de vinculación que se pasa al cursor en ejecución.

Para más detalles:Python DBI PEP