Connexion automatique en design TSQLConnection

Messages postés
1293
Date d'inscription
mardi 28 octobre 2003
Statut
Contributeur
Dernière intervention
3 juillet 2015
-
Bonjour,

Un petit truc qui m'énerve au plus haut point... Il m'arrive au cours de développements, de poser un TSQLConnection sur ma form, la configurer en débug sur un fichier de base de donnée de débug. En utilisant les différents composants de l'onglet dbExpress, il arrive que le composant TSQLConnection établisse la connexion avec le fichier physique (en activant un TSQLQuery par exemple). La propriété "connected" dans l'inspecteur d'objet est alors activée.
En général, je configure les paramètres du TSQLConnection sur le formCreate du Datamodule, car, en production, les fichiers de base de données n'ont pas forcément le même nom ni emplacement qu'en débug.
Or, il m'arrive souvent après avoir compilé la version release, d'avoir un problème lors du déploiement de l'appli sur un serveur de production. La raison : cette coche "connected" qu'il faut penser à décocher avant de lancer la compilation "release", parce que sinon, lors de l'exécution en environnement de prod, le composant essaie de se connecter à un fichier de base de données qui n'existe pas, et ce avant l'événement onFormCreate du Datamodule qui le contient.
(j'espère que tout est clair...)

Du coup je me demandais si vous aviez déjà rencontré ce problème, et comment vous l'aviez résolu (la réponse "en pensant à le décocher avant de compiler" n'est pas recevable...)

J'ai vu que le composant TSQLConnection est implémenté dans Data.SqlExpr. J'aimerais modifier cette unité pour désactiver par défaut la connection à la création du composant. J'ai naïvement essayé en ajoutant une ligne "Connected := False;" mais je vois qu'en débuggage pas à pas, elle n'est pas prise en compte. J'imagine qu'il doit falloir recompiler quelque chose... Mais avant de faire des bétises, je préfère demander...
Afficher la suite