arreter une requete SQL dans Delphi

arreter une requete SQL dans Delphi - Delphi/Pascal - Programmation

Marsh Posté le 14-05-2004 à 10:40:02    

Voilà, mon problème est dans le titre :
Est-ce possible dans Delphi(6) de stopper l'exécution d'une requête?
car ma requete peut parfois être très longue...

Reply

Marsh Posté le 14-05-2004 à 10:40:02   

Reply

Marsh Posté le 22-05-2004 à 23:18:29    

antares90 a écrit :

Voilà, mon problème est dans le titre :
Est-ce possible dans Delphi(6) de stopper l'exécution d'une requête?
car ma requete peut parfois être très longue...


 
 Qu'utilises-tu pour executer ton SQL ? Le BDE, ADO, autre ?
Parce que la méthode dépend de la couche intermédiaire...
 
Gruik !

Reply

Marsh Posté le 08-06-2004 à 10:30:48    

je vais peut-être te dire une connerie, mais en D6, tu utilises bien un composant genre dataset avec lequel tu fais open ou execute
si c'est trop long, t'as qu'à libérer ce composant ou fermer ta connexion à la base ...

Reply

Marsh Posté le 11-10-2004 à 16:48:14    

auredauv a écrit :

je vais peut-être te dire une connerie, mais en D6, tu utilises bien un composant genre dataset avec lequel tu fais open ou execute
si c'est trop long, t'as qu'à libérer ce composant ou fermer ta connexion à la base ...


 
Je suis ok avec toi, mais comment fais-tu pour obtenir la main pendant l'exécution de ta requête ?


Message édité par Dionyzos le 18-07-2005 à 17:49:30
Reply

Marsh Posté le 11-10-2004 à 18:25:02    

Bien tu place un Boutton et lorsque tu clique
Query.close;

Reply

Marsh Posté le 11-10-2004 à 20:19:45    

enry a écrit :

Bien tu place un Boutton et lorsque tu clique
Query.close;


 
Mais justement, j'ai déjà placé un bouton "Stop", et pendant l'exécution de la requete (lorsque le curseur de la souris devient un sablier SQL), l'application n'a plus la main. Donc je ne peux pas cliquer sur le bouton.
 
J'ai utilisé aussi la methode AfterScroll() mais elle s'applique au résultat de la requête, et non lorsque la base est réellement parcourue.
 
Sinon ca serait trop facile  :ange:


Message édité par Dionyzos le 18-07-2005 à 17:50:23
Reply

Marsh Posté le 13-10-2004 à 16:27:23    

:o Tu as raison, j'ai tout essayé et une fois qu'elle est lancer (la requête), rien ne l'arrête.

Dionyzos a écrit :

Mais justement, j'ai déjà placé un bouton "Stop", et pendant l'exécution de la requete (lorsque le curseur de la souris devient un sablier SQL), l'application n'a plus la main. Donc je ne peux pas cliquer sur le bouton.
 
J'ai utilisé aussi la methode AfterScroll() mais elle s'applique au résultat de la requête, et non lorsque la base est réellement parcourue.
 
Sinon ca serait trop facile  :ange:

Reply

Marsh Posté le 15-10-2004 à 15:28:19    

Je trouve ça hallucinant que rien n'ait été prévu pour interférer dans l'exécution d'une requête SQL dans Delphi !  :pfff:


Message édité par Dionyzos le 18-07-2005 à 17:51:35
Reply

Marsh Posté le 17-10-2004 à 12:45:23    

La requête SQL c'est pas Delphi qui s'en occupe, c'est le SGBD, je suppose que c'est pareil dans tous les languages [:spamafote]


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 18-10-2004 à 09:55:17    

Bon bah j'vais me pendre...
 
...adieu monde cruel de la programmation !!!  :(


Message édité par Dionyzos le 18-07-2005 à 17:52:19
Reply

Marsh Posté le 18-10-2004 à 09:55:17   

Reply

Marsh Posté le 18-10-2004 à 16:16:50    

Ben si, il "suffit" de lancer la requête dans un thread pour pouvoir arrêter l'exécution avec un bouton qui libère le thread...

Reply

Marsh Posté le 18-10-2004 à 18:36:42    

martin95 a écrit :

Ben si, il "suffit" de lancer la requête dans un thread pour pouvoir arrêter l'exécution avec un bouton qui libère le thread...


 
T'aurais pas un ch'tit bout de code en exemple pour illustrer par la pratique ta théorie ?  :)  
 
Aïe ! Là je sens que je suis exigeant...  :whistle:


Message édité par Dionyzos le 18-07-2005 à 17:55:50
Reply

Marsh Posté le 19-10-2004 à 10:11:43    

Tu peux aller voir ici, ça devrait te satisfaire:
 
http://bdn.borland.com/article/0,1410,16231,00.html

Reply

Marsh Posté le 22-10-2004 à 14:13:04    

J'allais le dire : y'a des multithread préconçus dans D6 il me semble : j'avais regardé et ça m'avait paru assez bien expliqué : peut-être plutôt dans l'aide ...

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed