Bonjour,
J'ai un pb étrange avec une requête SQL dans mon code Delphi ; sont RecorCount me renvoie -1 alors que le résultat de la reqête contient des enregistrements.
Voici la requête SQL qui fonctionne parfaitement dans l'analyseur de requête de MS SQL :Elle me retourne bien les 15 lignes attendues.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 select distinct REPLACE(RIGHT(RTRIM(codehoraire), LEN(codehoraire) - CHARINDEX('/', codehoraire)), '&', '') as 'ZONE' from horaire order by 'ZONE'
Et maintenant voici la même requête intégrée dans mon code Delphi (6) :Lorsque je force la valeur de 'n' à 5 par exemple, il me renvoie bien les 5 1ers enregistrements
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 procedure TMainForm.ListZones; var n, k : Integer; begin Requete.Close; with Requete.SQL do begin Clear; Add('select distinct REPLACE(RIGHT(RTRIM(codehoraire), LEN(codehoraire) - CHARINDEX(''/'', codehoraire)), ''&'', '''') as ''ZONE'''); Add('from horaire'); Add('order by ''ZONE'''); end; Requete.Open; n := Requete.RecordCount; for k:=0 to n-1 do begin MEMO.Lines.Add(VarToStr(Requete.FieldValues['ZONE'])); Requete.Next; end; Requete.Close; end;
Qq'un a-t-il déjà eu le même problème ? Merci...
Partager