Bonjour tout le monde,
J'ai une classe en c# gérant l'accès à une BDD Oracle.
Dans cette classe, j'ai développé une fonctin me permettant de construire une requête avec des paramètres. les paramètres sont stockées dans une table de hachage. voici mon code :
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| protected override string SelLikeQuery(string query, Hashtable hash, string groupBy)
{
string where = " WHERE ";
IDictionaryEnumerator en = hash.GetEnumerator();
int i = 0;
while (en.MoveNext())
{
where = where + "" + en.Key + " LIKE ':" + en.Value + "' ";
if (i++ < hash.Count - 1 ) where = where + " AND ";
}
query = query + where + " " + groupBy + "";
return query;
} |
J'ai besoin de rajouter des % % entre mes paramètres.
j'ai remplacé cette ligne
where = where + "" + en.Key + " LIKE ':" + en.Value + "' ";
par :
where = where + "" + en.Key + " LIKE '%:" + en.Value + "%' ";
L'execution de la requête dans mon programme, me retourne l'erreur suivante: ORA-01036: numéro/nom de variable interdit
Je sais très bien que l'erreur vient de la ligne que j'ai modifié.
Je vous demande s'il vous plâit de m'aider à corriger cette ligne pour que ca marche. Merci
Partager