Problème AdoQuery [Résolu]

Messages postés
291
Date d'inscription
lundi 18 janvier 2016
Statut
Membre
Dernière intervention
14 février 2018
- - Dernière réponse : vico8000
Messages postés
291
Date d'inscription
lundi 18 janvier 2016
Statut
Membre
Dernière intervention
14 février 2018
- 13 févr. 2018 à 13:46
Bonjour,

J'ai un petit soucis dans mon code, et je ne trouve pas de solution.

Nom_Serveur := Fichier_Ini.ReadString('Variables_globales','Nom_Serveur','');
Password := Fichier_Ini.ReadString('Variables_globales','Password','');
User_ID := Fichier_Ini.ReadString('Variables_globales','User_ID','');
Nom_TableEvent := Fichier_Ini.ReadString('Variables_globales','Nom','');
CatalogEvent := Fichier_Ini.ReadString('Variables_globales','Catalog','');
CommandeSQL := 'Provider=SQLOLEDB.1;Password=' + Password + ';Persist Security Info=True;User ID=' + User_ID + ';Initial Catalog=' + CatalogEvent + ';Data Source=' + Nom_Serveur + ';';
Consoletrace('test1',debugglevel1);
with AdoConnectionEvent do Begin
Close;
loginPrompt:=False;
ConnectionString:=CommandeSQL;
End;
Consoletrace('test2',debugglevel1);
AdoConnectionEvent.Open();
Consoletrace('test3',debugglevel1);
AdoQueryEvent.Connection:=AdoConnectionEvent;
Consoletrace('test4',debugglevel1);


Lorsque mon serveur SQL est joignable, aucun problème. Lorsqu'il n'est pas joignable pour x raison, je reste planté au niveau de mon AdoConnectionEvent.Open();.
J'ai également essayé avec des try/except sans résultat et également ceci :
try
ADOConn.Connected := True;
except
on e: EADOError do
begin
MessageDlg('Error while connecting', mtError,
[mbOK], 0);

Exit;
end;
end;

sans résultat également. Même plantage, toujours avec le open et si utilisation d'un try, dans le try.

Je vous remercie par avance pour l'aide apportée.
Cordialement.
Afficher la suite 

Votre réponse

5 réponses

Messages postés
291
Date d'inscription
lundi 18 janvier 2016
Statut
Membre
Dernière intervention
14 février 2018
2
0
Merci
Bonjour,

Je suis toujours bloqué sur le point précédent.
J'ai multiplié les tests sans succes.
J'ai également ajouté un Connectiontimeout à mon adoconnection sans effet non plus. J'ai vraiment besoin d'aide.

Help !! Cordialement.
Commenter la réponse de vico8000
Messages postés
429
Date d'inscription
samedi 17 mai 2003
Statut
Membre
Dernière intervention
6 mai 2019
16
0
Merci
Salut,

une solution semble être de détruire puis de recréer ADOConnection en cas d'erreur dans le bloc try...except.
Vu ici :
https://www.developpez.net/forums/d1761142/environnements-developpement/delphi/bases-donnees/probleme-adoconnection-postgresql/
Commenter la réponse de korgis
Messages postés
291
Date d'inscription
lundi 18 janvier 2016
Statut
Membre
Dernière intervention
14 février 2018
2
0
Merci
Bonjour,

Cela ne répondra malheureusement pas à mon problème puisque je n'arrive même pas à tester la condition false.

J'ai trouvé une solution à mon problème pour le open, le fait de passer en type de connexion asynchrone permet de passer à l'étape suivante.

Le problème c'est que j'ai le même plantage mais sur la condition suivante :
if not AdoConnectionEvent.Connected then

Des avis ?

Cordialement.
Commenter la réponse de vico8000
Messages postés
291
Date d'inscription
lundi 18 janvier 2016
Statut
Membre
Dernière intervention
14 février 2018
2
0
Merci
Bonjour,

Je viens aux nouvelles suite à de nouveaux tests.
J'ai essayé de remplacer mes composants ADOConnection et AdoQuery par les composants SQLConnection et SQLQuery.
Cela n'a réglé en aucun cas mon problème, je suis exactement au même cas de figure que sur les tests précédents.

Si un sauveur pouvait enlever son masque, ...

Cordialement.
Commenter la réponse de vico8000
Messages postés
291
Date d'inscription
lundi 18 janvier 2016
Statut
Membre
Dernière intervention
14 février 2018
2
0
Merci
Pour ceux qui auraient le même problème, effectuez des essais avec FireDAC, cela a réglé mon problème. (Mode AmAsync - Non bloquant)
Commenter la réponse de vico8000