Bonjour,

J'essaie de construire dynamiquement une requête.
Je dois entourer entre guillemets l'alias des champs car cela n'est pas accepté avec de simples quotes.

Comment doit-on faire ?

Exemples testés :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
// 1ère Méthode :
string aTextSql = "select titi as \"champ titi\" from toto";
 
// 2ème Méthode :
string aTextSql = @"select titi as ""champ titi"" from toto";
 
// 3ème Méthode :
StringBuilder strBuild;
strBuild = new StringBuilder();
strBuild.Append("select titi as \"champ titi\" from toto");
Quand on affecte la propriété commandtext d'un objet OracleCommand (en vue de l'exécuter) avec la variable aTextSql ou strBuild.ToString(), le contenu de la chaine est tel que les alias de champ ne sont pas seulement entourés de guillemets ("), mais en fait de backslash-guillemets (\")

ex :

on obtient

select titi as \"champ titi\" from toto

au lieu de

select titi as "champ titi" from toto

et du coup, Oracle n'aime pas cela du tout !!!
merci d'avance.