Python aktualizacja tabeli

Aktualizacja tabeli

Możesz użyć zapytania "UPDATE" do zaktualizowania istniejących rekordów w tabeli:

Przykład

Zastąp wartość w kolumnie adresu "Valley 345" na "Canyoun 123":

import mysql.connector
mydb = mysql.connector.connect(
  host="localhost",
  user="yourusername",
  passwd="yourpassword",
  database="mydatabase"
)
mycursor = mydb.cursor()
sql = "UPDATE customers SET address = 'Canyon 123' WHERE address = 'Valley 345'
mycursor.execute(sql)
mydb.commit()
print(mycursor.rowcount, "record(s) affected")

Uruchomienie przykładu

Ważne:Proszę zwrócić uwagę na zapytanie mydb.commit()Wymagane są zmiany, w przeciwnym razie tabela nie zostanie zmieniona w żaden sposób.

Proszę zwrócić uwagę na WHERE klauzulę w syntaksie UPDATE: WHERE klauzula określa rekordy do zaktualizowania. Jeśli pominie się WHERE klauzulę, wszystkie rekordy zostaną zaktualizowane!

Prewencja przed wstrzyknięciem SQL

To jest dobry zwyczaj, aby unikać ucieczek znaków w wartościach zapytania update.

To jest robione, aby zapobiec wstrzyknięciu SQL, które jest powszechną techniką hakerów sieciowych, które mogą uszkodzić lub nadużyć Twojej bazy danych.

Moduł mysql.connector używa占位ników %s Do unikania ucieczek znaków w zapytaniu delete:

Przykład

Używaj metody占位符 %s do unikania ucieczek znaków:

import mysql.connector
mydb = mysql.connector.connect(
  host="localhost",
  user="yourusername",
  passwd="yourpassword",
  database="mydatabase"
)
mycursor = mydb.cursor()
sql = "UPDATE customers SET address = %s WHERE address =" %s"
val = ("Valley 345", "Canyon 123")
mycursor.execute(sql, val)
mydb.commit()
print(mycursor.rowcount, "record(s) affected")

Uruchomienie przykładu