Bonjour � tous,
Dans mon programme, j'ai une requ�te SQL param�tr�e o� je dois substituer les bonnes valeurs. Par exemple, disons que ma requ�te est :
SELECT * FROM test WHERE var1=:valeurvar1 AND var2=:valeurvar2
Je dois substituer valeurvar1 et valeurvar2 par les valeurs correctes. Je poss�de une map (d�j� constitu�e), qui me donne la valeur correspondante.
Je voudrais donc boucler sur l'ensemble des param�tres de la requ�te et assigner la bonne valeur venant de la map.
J'ai un d�but de code mais je n'arrive pas � aller plus loin, plus particuli�rement je ne sais pas comment r�cup�rer ce qui va me servir de cl� dans ma map (� savoir valeurvar1, valeurvar2).
Voici mon code :
A l'int�rieur du for, je veux donc assigner � la valeur du param�tre courant la valeur � substituer (via la fonction getVariableValue qui elle me retourne la valeur de la map).
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 String __fastcall test::substitution(TADOConnection *cnn, String sSQL) { TADOQuery* query = new TADOQuery(NULL); query->Connection = cnn; query->SQL->Add(sSQL); for(int i = 0; i < query->Parameters->Count; ++i) { query->Parameters->Items[i]->Value = getVariableValue(query->Parameters->Items[i]->// ?); } query->Active = true; return query->Recordset; }
Aussi, j'ai mis String comme type de retour mais ma fonction doit en fait retourner un recordset. Est-ce que return query->Recordset; est correct, cela va-t-il bien retourner le recordset que la query va rapatrier une fois sa propri�t� Active pass� � true ? Le type de la valeur de retour est Recordset alors ?
Voil�, c'est encore un peu flou pour moi, si quelqu'un peut m'�clairer.
Merci d'avance.
Partager