Erreur d'Apostrophe en c# dans une requete SQL SERVER

L'insertion d'une chaine de caractère contenant un apostrophe dans une table sur SQL Server fait partie des questions les plus fréquentes que j'ai reçu de la part de mes lecteurs.

Cela donne du fil à retordre pour certains et pourtant la soultion est très simple.
Exemple
Vous voulez inserer ceci dans la base


string _titre = "Article de SirJOJO";
string _description = "bla bla bla ,Erreur d'Apostrophe dans une requete SQL SERVER bla bla bla  ";
INSERT INTO maTable ( Title,  Description )  VALUES ('" + _titre + "', '" + _description + "' ); 

Evidement vous aurez une erreur de syntaxe.

Pour corriger l'exception, faites ceci


string _titre = "Article de SirJOJO";
string _description = "bla bla bla ,Erreur d'Apostrophe dans une requete SQL SERVER bla bla bla  ";
INSERT INTO maTable ( Title,  Description )  VALUES ('" + _titre + "', '" + _description.Replace("'", "''") + "' ); 

Voilà cela devrait passer :)

PS: L'astuce est valabe aussi les autres type de requetes CRUD (Select, Update, Delete)

A bientôt dans un nouveau tutoriel 

Copyright 2016 SIR JOJO | Designed and Developed By ELTIMAR