Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak mogę uciec od danych wejściowych do bazy danych MySQL w Python3?

Chociaż odpowiedź „rozwiązana” działa, nie jest to najlepsza praktyka. Używając biblioteki zgodnej z Pythonem DBI, powinieneś używać zmiennych bind zamiast formatować ciąg i przekazywać go do wykonania. Z tą metodologią wiążą się niebezpieczeństwa.

Dlatego jest to właściwy sposób:

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

Zwróć uwagę, że nie jest to ciąg formatu, ale zmienna bind przekazana do kursora wykonującego.

Szczegółowe informacje:Python DBI PEP



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy nazwy tabel w MySQL rozróżniają wielkość liter?

  2. mysql_exceptions.OperationalError:(1045, odmowa dostępu dla użytkownika 'root'@'localhost' (przy użyciu hasła:TAK))

  3. Najlepszy sposób na tworzenie/zarządzanie/projektowanie powtarzających się zadań/kalendarza

  4. Dane binarne nie są prawidłowo przechowywane w MySQL

  5. Zainstaluj MySQL Workbench do administrowania bazą danych