Mysql
 sql >> Database >  >> RDS >> Mysql

Query Python e MySQL con virgolette

Questo è il modo in cui aggiungi parametri a un'istruzione.

sql = "INSERT INTO my_table VALUES (%s, %s, %s);"

cursor.execute(sql, [string1, string2, string3])

Vedi MySQLCursor.execute() .

In questo esempio non devi citare esplicitamente i valori perché non li stai incollando nel tuo SQL. Inoltre, questo è più sicuro, perché se la stringa contiene un apice finale e un SQL dannoso, non verrà eseguita.

Non puoi aggiungere il nome della tabella come parametro, quindi se fosse in una variabile dovresti devi incollarlo nel tuo SQL:

sql = "INSERT INTO {} VALUES (%s, %s, %s);".format(table_name)