PYTHON MYSQL UPDATE TABLE

Puede actualizar los registros existentes en una tabla usando la declaración «UPDATE«:

Ejemplo Sobrescriba la columna de dirección de «Samaranch 32» a «C/ Mayor 42»:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="tu usuario",
  passwd="tu contraseña",
  database="tu bbdd"
)

mycursor = mydb.cursor()

sql = "UPDATE clientes SET direccion = 'C/ Mayor 42' WHERE address = 'Samaranch 32'"

mycursor.execute(sql)

mydb.commit()

print(mycursor.rowcount, "registros afectado/s")

Observe la declaración: mydb.commit ().Es necesario realizar los cambios, de lo contrario no se realizarán cambios en la tabla.

Observe la cláusula WHERE en la sintaxis de UPDATE: La cláusula WHERE especifica qué registro o registros deben actualizarse.

Si omite la cláusula WHERE, todos los registros se actualizarán.

Prevenir la inyección de SQL

Se considera una buena práctica escapar de los valores de cualquier consulta, también en las declaraciones de actualización.

Esto es para evitar inyecciones de SQL, que es una técnica común de piratería para destruir o hacer un mal uso de su base de datos. El módulo mysql.connector usa el marcador de posición % s para escapar de los valores en la declaración de eliminación:

Ejemplo

Escape de los valores utilizando el método placholder % s:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="tu usuario",
  passwd="tu contraseña",
  database="tu bbdd"
)

mycursor = mydb.cursor()

sql = "UPDATE clientes SET direccion = %s WHERE direccion = %S"

val = ("Samaranch 32", "C/Mayor 42")

mycursor.execute(sql, val)

mydb.commit()

print(mycursor.rowcount, "registros afectado/s")