Tamo junto mano :D
Talvez você já saiba, mas sobre o segundo argumento do execute
, talvez surja a dúvida: "Por que fazer isso se dá pra simplesmente usar uma f string
?". Basicamente é para evitar um ataque chamado sql injection, onde um usuário malicioso envia para sua query caracteres perigosos, que podem ser interpretados como sendo código sql
, que consegue modificar a query, ao invés de apenas um valor normal.
As bibliotecas usadas para interagir com banco de dados costumam ter recursos como esse para que elas consigam lidar com isso de forma apropriada, e garantir que os valores serão interpretados apenas como uma string
e não como sql
.