Bonsoir,
J'ai une petite question toute bête qui vient de me prendre quelques looongues dizaines de minutes de recherche un peu partout et pour laquelle je n'ai pas trouvé de réponse franche ou qui fonctionne.
Quelle est la meilleure syntaxe pour insérer dans une base de données mysql ?
Pourquoi cette question bête ?
Jusqu'à présent j'utilisais la syntaxe suivante :
curs.execute("INSERT INTO table1(col1, col2, col3) VALUES({0}, '{1}', '{2}')".format(id, "CAT1", "Monsieur {0} ne veut pas aller travailler aujourd hui.".format(nomMonsieur)))
mais dans mon programme, le résultat de la variable 'nomMonsieur' vient d'une base de données et je suis embêté depuis que je suis tombé dans le cas d'un nom avec un apostrophe.
Depuis, j'ai un peu plus regardé en détail les différentes possibilités pour insérer mon 'nomMonsieur' avec son apostrophe mais je n'ai pas trouvé la méthode adéquat.
De plus, j'ai pu lire à droite à gauche que ce genre de syntaxe pouvait créer des failles de sécurité permettant des injections sql...
Brrrr... Ca fait peur.
Du coup, je doute.... et je pose cette question.
Merci d'avance pour vos réponses.
Partager