sql >> Databáze >  >> RDS >> Mysql

Jsou dynamické dotazy mysql s escapováním sql stejně bezpečné jako připravené příkazy?

Ano, ale kvalifikované ano.

Musíte správně uniknout 100 % vstupu. A musíte správně nastavit znakové sady (Pokud používáte C API, musíte zavolat mysql_set_character_set() místo SET NAMES ). Pokud vám chybí jedna maličkost, jste zranitelní. Takže ano, pokud děláte vše správně...

A to je důvod, proč spousta lidí doporučí připravené dotazy. Ne proto, že by byly bezpečnější. Ale protože jsou shovívavější...



  1. Jak vypočítat rozdíl mezi dvěma časovými razítky v SQLite

  2. Co je efektivnější:Více tabulek MySQL nebo jedna velká tabulka?

  3. Django bulk_create s ignorováním řádků, které způsobují chybu IntegrityError?

  4. Co je Azure Data Studio?