Bonjour et bienvenue,
pour une premier post, je vais peutêtre paraitre un peu "vache"
Deux choses :
Tout d'abord il vaut mieux utiliser des requêtes paramétrées
update vente_c set qtt=:qttv , s_tt =:tt where code_b=:c and n_vente=:nv
ce qui évitera des problèmes de conversions de type de données et d'injection SQL
je suis sidéré que vous ayez utilisé un paramètre pour qtt et pas pour les autres à moins que, carrément vous vous soyez fourvoyé
ensuite et c'est ce qui vaudrait un
vous oublier que le SQL utilise un format précis pour des valeurs comme les dates et les nombres, dans le cas des nombres le point décimal et non la virgule.
Si malgré ce que j'ai écrit en premier, vous voulez utiliser des formats ou des floattostr n'oubliez pas d'indiquer le bon format TFormatSettings.EN_US
Enfin, conseil à tout nouveau venu, indiquez votre version de Delphi dans chaque nouvelle discussion et, dans ce fil précis, les composants de données utilisés . datamodule1.nv_vente nous indique que vous utilisez un datamodule
mais nv_vente ne nous indique pas de quel type de Query il s'agit (TQuery, TFDQuery, TAdoQuery ?)
S'il s'agit de FDQuery vous pouvez envisager une syntaxe beaucoup plus courte pour cet Update
FDConnexion.ExecSQL('update vente_c set qtt=:qttv , s_tt =:tt where code_b=:c and n_vente=:nv',[qttv,St,datamodule1.produit_v.FieldByName().asinteger,edit4.text]);
Partager