Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment échapper à l'apostrophe (') dans MySql ?

La documentation MySQL que vous citez en dit un peu plus que ce que vous mentionnez. Il dit aussi,

Un "' ” à l'intérieur d'une chaîne entre guillemets avec “' ” peut être écrit comme “'' ”.

(De plus, vous avez lié au Version MySQL 5.0 du tableau 8.1. Séquences d'échappement de caractères spéciaux , et la version actuelle est 5.6 — mais la version actuelle Tableau 8.1. Séquences d'échappement de caractères spéciaux semble assez similaire.)

Je pense que la note Postgres sur le backslash_quote (string) paramètre est informatif :

Ceci contrôle si un guillemet peut être représenté par \' dans un littéral de chaîne. La manière préférée, standard SQL, de représenter un guillemet est de le doubler ('' ) mais PostgreSQL a historiquement aussi accepté \' . Cependant, l'utilisation de \' crée des risques de sécurité...

Cela me dit que l'utilisation d'un guillemet simple doublé est un meilleur choix global et à long terme que l'utilisation d'une barre oblique inverse pour échapper au guillemet simple.

Maintenant, si vous souhaitez également ajouter le choix de la langue, le choix de la base de données SQL et ses bizarreries non standard, et le choix du cadre de requête à l'équation, vous pourriez vous retrouver avec un choix différent. Vous ne donnez pas beaucoup d'informations sur vos contraintes.