Ereure sql : trop peu de parametre ?

Résolu
fermeula Messages postés 2 Date d'inscription dimanche 23 mai 2004 Statut Membre Dernière intervention 29 août 2004 - 28 août 2004 à 15:10
fermeula Messages postés 2 Date d'inscription dimanche 23 mai 2004 Statut Membre Dernière intervention 29 août 2004 - 29 août 2004 à 20:25
jai un probleme avec delphi 6/access

je veu envoyé les donné d'un formulaire dans ma base

query1.close;
query1.SQL.Clear;
query1.SQL.Add('INSERT INTO COTISATION (LIB_cotis, validite, deductible) VALUES ('+edit2.text+' ,'+BoolToStr(validite.Checked)+','+BoolToStr(deductible.Checked)+');');
Query1.ExecSQL;
query1.Close;

dans une autre partie de mon programme jai utilisé la meme méthode et ca marche mais la ca me fait :
erreur sql general, trop peu de parametre. 1 attendu

là je capte plus...et ca fait pas 5 minutes que je me prend la tete dessu !

2 réponses

cs_saib Messages postés 38 Date d'inscription mercredi 12 mars 2003 Statut Membre Dernière intervention 15 mars 2010
28 août 2004 à 20:56
je te suggere de separer la partie "requette" des valeurs que tu y passe, ca evite des probleme de type de données et de plus ca te permet de definir ta requette a un seul endroit et de la modifier si besoin sans avoir a modifier tout le code (tu peut meme la charger depuis un fichier texte, comme ca en cas de modif sur la base, tu n'a pas a modifier et recompiler le code)

essaie :

query1.close;
query1.SQL.Clear;
query1.SQL.text := 'INSERT INTO COTISATION (LIB_cotis, validite, deductible) VALUES (:LIB_cotis, :validite, :deductible);');

Query1.Parameters.ParamByName('LIB_cotis').Value := edit2.text;
Query1.Parameters.ParamByName('validite').Value := validite.Checked;
Query1.Parameters.ParamByName('validite').Value := deductible.Checked;
Query1.ExecSQL;
query1.Close;

saib
3
fermeula Messages postés 2 Date d'inscription dimanche 23 mai 2004 Statut Membre Dernière intervention 29 août 2004
29 août 2004 à 20:25
oula, ca marche !
je comprend toujours pas pourquoi l'autre méthode marche pas.
javais tester une méthode un peu comme ca, mais comme je suis un peu trop blond ca marchais pat avec moi....

1000 merci
0
Rejoignez-nous