Mysql
 sql >> Base de données >  >> RDS >> Mysql

Variables PyMySQL dans les requêtes

Vous devez passer les paramètres à l'intérieur d'un itérable - généralement un tuple :

query = 'SELECT id,sing_name,bir_yr FROM singers_list WHERE bir_yr = %s'
curs.execute(query, (year, ))

Notez que j'ai également remplacé le ? espace réservé avec %s .

Notez également que le pilote MySQL gèrerait automatiquement la conversion de type entre Python et MySQL, mettrait des guillemets si nécessaire et échapperait les paramètres pour vous protéger des attaques par injection SQL.