bonjour, je débute avec les paramètres dans les requêtes je trouve ça diablement efficace surtout la gestion du type de données!
J'ai un code qui fonctionne mais j'ai quelques questions sur l'utilisation car dans les divers exemples que je trouvais ils n'y avaient pas ce que j'ai dû mettre pour que cela fonctionne, alors si quelqu'un a un avis sur mon travail ça serait sympa de me dire si ça peut être amélioré
j'ai dû mettre Parameters.Refresh; sinon les paramètres n'étaient pas créés c'est bon?
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
16
17
18
19
20
21
22
23
24
25
26
27
28 With DBGridCustomAll Do With ADOQuery Do Begin Close; For I := 0 To NbSet Do Begin SQL.Clear; SQL.Add(strDebutSQL + strNomChamps + strMilieuSQL + strValeurs + strFinSQL); ParamCheck := True; Parameters.Refresh; // C := Parameters.Count; // for debug in rad see in c number of param For C := 0 To ColumnCount - 1 Do Begin If Columns[C].Tag <> -5 Then Begin Parameters.ParamByName(':P' + IntToStr(C)).Value := Rows[i].Values[C]; Parameters.ParamByName(':P' + IntToStr(C)).DataType := Columns[C].DataTypeField; End; End; ExecSQL; ParamCheck := false; Close; // ShowMessage(SQL.Text); fmLoadWait.LoadPosition := I; End; End; End;
et j'ai dû mettre aussi ParamCheck := false; sinon au deuxième passage dans la boucle j'avais un message comme quoi les paramètres n'étaient pas trouvés.
est-ce que je dois réaffecté ma requête à chaque boucle? histoire de ne pas mélanger les valeurs en cas de valeur vide
merci d'avance pour vos précieux conseils
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 SQL.Clear; SQL.Add(strDebutSQL + strNomChamps + strMilieuSQL + strValeurs + strFinSQL);
Je vous mets ma requête:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 --------------------------- gestion_exposant --------------------------- INSERT INTO [Info exposant print] ([Date d'inscription], [NOM]) VALUES (:P0, :P1); --------------------------- OK ---------------------------
Partager