Bonjour,

j'utilise
  • zeosdbo-7.1.4-stable
  • mariaDB-5.5-40

La requête incriminée :
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
with SQL do begin
 Clear;
 Add('SELECT liID FROM versLIC');
 Add('WHERE liAPP= :paAPP AND liKEY= :paKEY AND liACT= :paACT;');
end;
with Params do begin
  ParamByName('paAPP').AsString   := LowerCase(gExeNameWithoutExt);
  ParamByName('paKEY').AsString   := edKEY.Text;
  ParamByName('paACT').AsInteger  := 1;
end;
Open;
if not IsEmpty then begin
 First;
 showmessage := Fields[0].AsString;
end else 
 showmessage('IsEmpty');
Cette requête me renvoie systématiquement isEmpty alors qu'il existe un enregistrement répondant au filtre.

En plus, en modifiant légèrement la requête :
Add('WHERE liAPP= :paAPP AND liKEY= :paKEY;'); me renvoie le bon ID;
Add('WHERE liAPP= :paAPP AND liACT= :paACT;'); me renvoie le bon ID également.

Pourquoi ce problème ? A priori je ne vois pas d'erreur de programmation. J'ai essayé avec des parenthèses, des quotes... sans succès.
Comment le contourner ?
Merci.