adoQuery = new TADOQuery(NULL);
adoQuery->ConnectionString = mvsDBConnectionString;
}
}
}
Ce que je veux faire, c'est renseigner dans un fichier de mon application
qui utilise la classe précédente la variable mvsDBConnectionString afin
que la classe Query puisse se connecter à la base de données.
A la première ligne du main j'ai donc ajouté la ligne:
[ILINK32 Erreur] Error: 'MVS::DB::mvsDBConnectionString' externe non
rÚsolu, rÚfÚrencÚ depuis D:\MES DOCUMENTS\RAD STUDIO\PROJETS\TESTS\TEST
DBBOX\DEBUG\PROJECT1.OBJ
Une solution serait d'utiliser une classe Singleton qui serait utilisée
par la classe Query pour se connecter comme il faut, mais je voudrais
savoir si une autre solution est envisageable.
Ce que je veux faire, c'est renseigner dans un fichier de mon application qui utilise la classe précédente la variable mvsDBConnectionString afin que la classe Query puisse se connecter à la base de données.
le constructeur de Query peut servir à cela (ie recevoir un ref. const).
Une solution serait d'utiliser une classe Singleton qui serait utilisée par la classe Query pour se connecter comme il faut, mais je voudrais savoir si une autre solution est envisageable.
une classe Requete indépendante d'une connexion à une base est, nécessairement, incomplète. votre choix de récupérer une chaine de connexion via une globale créera surement une rebondance sur le code d'établissement de la connexion. une solution serait de disposer d'une classe gérant la connexion elle-même et d'initialiser la classe Requete avec une instance connexion, on encore que la classe connexion serve de factory à des instances de requetes; en hiérarchisant ces classes, et en définissant leur relation, votre besoin de globales externes disparaitra surement.
Sylvain.
DELVA Michael wrote on 08/09/2007 14:27:
namespace MVS {
namespace DB {
extern AnsiString mvsDBConnectionString;
class PACKAGE Query {
protected:
TADOQuery * adoQuery;
ça existe encore ADO ??
je l'utilisais à sa sortie (il y a 10 ans non?)
depuis je préfère largement les solutions non propriétaires.
Ce que je veux faire, c'est renseigner dans un fichier de mon application
qui utilise la classe précédente la variable mvsDBConnectionString afin
que la classe Query puisse se connecter à la base de données.
le constructeur de Query peut servir à cela (ie recevoir un ref. const).
Une solution serait d'utiliser une classe Singleton qui serait utilisée
par la classe Query pour se connecter comme il faut, mais je voudrais
savoir si une autre solution est envisageable.
une classe Requete indépendante d'une connexion à une base est,
nécessairement, incomplète.
votre choix de récupérer une chaine de connexion via une globale créera
surement une rebondance sur le code d'établissement de la connexion.
une solution serait de disposer d'une classe gérant la connexion
elle-même et d'initialiser la classe Requete avec une instance
connexion, on encore que la classe connexion serve de factory à des
instances de requetes; en hiérarchisant ces classes, et en définissant
leur relation, votre besoin de globales externes disparaitra surement.
Ce que je veux faire, c'est renseigner dans un fichier de mon application qui utilise la classe précédente la variable mvsDBConnectionString afin que la classe Query puisse se connecter à la base de données.
le constructeur de Query peut servir à cela (ie recevoir un ref. const).
Une solution serait d'utiliser une classe Singleton qui serait utilisée par la classe Query pour se connecter comme il faut, mais je voudrais savoir si une autre solution est envisageable.
une classe Requete indépendante d'une connexion à une base est, nécessairement, incomplète. votre choix de récupérer une chaine de connexion via une globale créera surement une rebondance sur le code d'établissement de la connexion. une solution serait de disposer d'une classe gérant la connexion elle-même et d'initialiser la classe Requete avec une instance connexion, on encore que la classe connexion serve de factory à des instances de requetes; en hiérarchisant ces classes, et en définissant leur relation, votre besoin de globales externes disparaitra surement.
[ILINK32 Erreur] Error: 'MVS::DB::mvsDBConnectionString' externe non rÚsolu, rÚfÚrencÚ depuis D:MES DOCUMENTSRAD STUDIOPROJETSTESTSTEST DBBOXDEBUGPROJECT1.OBJ
Je ne vois pas de problèmes. Si tu as vérifié que ce n'est pas une typo, tu peux construire un exemple minimal (en gros, ce que j'ai laissé devrait suffire, commence meme par changer le type de la variable).
Sinon comme Sylvain j'aurais tendance à séparer la connection de la requête.
-- Jean-Marc FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html Site de usenet-fr: http://www.usenet-fr.news.eu.org
[ILINK32 Erreur] Error: 'MVS::DB::mvsDBConnectionString' externe non
rÚsolu, rÚfÚrencÚ depuis D:MES DOCUMENTSRAD STUDIOPROJETSTESTSTEST
DBBOXDEBUGPROJECT1.OBJ
Je ne vois pas de problèmes. Si tu as vérifié que ce n'est pas une typo,
tu peux construire un exemple minimal (en gros, ce que j'ai laissé devrait
suffire, commence meme par changer le type de la variable).
Sinon comme Sylvain j'aurais tendance à séparer la connection de la
requête.
--
Jean-Marc
FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ
C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html
Site de usenet-fr: http://www.usenet-fr.news.eu.org
[ILINK32 Erreur] Error: 'MVS::DB::mvsDBConnectionString' externe non rÚsolu, rÚfÚrencÚ depuis D:MES DOCUMENTSRAD STUDIOPROJETSTESTSTEST DBBOXDEBUGPROJECT1.OBJ
Je ne vois pas de problèmes. Si tu as vérifié que ce n'est pas une typo, tu peux construire un exemple minimal (en gros, ce que j'ai laissé devrait suffire, commence meme par changer le type de la variable).
Sinon comme Sylvain j'aurais tendance à séparer la connection de la requête.
-- Jean-Marc FAQ de fclc++: http://www.cmla.ens-cachan.fr/~dosreis/C++/FAQ C++ FAQ Lite en VF: http://www.ifrance.com/jlecomte/c++/c++-faq-lite/index.html Site de usenet-fr: http://www.usenet-fr.news.eu.org
DELVA Michael
ça existe encore ADO ?? je l'utilisais à sa sortie (il y a 10 ans non?) depuis je préfère largement les solutions non propriétaires.
Voui ^^ C'est ce avec quoi j'ai commencé quand je devais m'attaquer aux base de données. J'ai découvert une solution autre récemment, et je vais l'utiliser dans le futur à la place d'ADO...
une classe Requete indépendante d'une connexion à une base est, nécessairement, incomplète. votre choix de récupérer une chaine de connexion via une globale créera surement une rebondance sur le code d'établissement de la connexion. une solution serait de disposer d'une classe gérant la connexion elle-même et d'initialiser la classe Requete avec une instance connexion, on encore que la classe connexion serve de factory à des instances de requetes; en hiérarchisant ces classes, et en définissant leur relation, votre besoin de globales externes disparaitra surement.
C'est une idée que je comptais développer plus tard avec la solution dont je viens de faire connaissance...
Quelque chose me dit que je vais m'attaquer à ça un peu plus tôt que prévu ;)
Merci pour le conseil
Mike
ça existe encore ADO ??
je l'utilisais à sa sortie (il y a 10 ans non?)
depuis je préfère largement les solutions non propriétaires.
Voui ^^ C'est ce avec quoi j'ai commencé quand je devais m'attaquer aux
base de données. J'ai découvert une solution autre récemment, et je vais
l'utiliser dans le futur à la place d'ADO...
une classe Requete indépendante d'une connexion à une base est,
nécessairement, incomplète.
votre choix de récupérer une chaine de connexion via une globale
créera surement une rebondance sur le code d'établissement de la
connexion. une solution serait de disposer d'une classe gérant la
connexion elle-même et d'initialiser la classe Requete avec une
instance connexion, on encore que la classe connexion serve de factory
à des instances de requetes; en hiérarchisant ces classes, et en
définissant leur relation, votre besoin de globales externes
disparaitra surement.
C'est une idée que je comptais développer plus tard avec la solution dont
je viens de faire connaissance...
Quelque chose me dit que je vais m'attaquer à ça un peu plus tôt que prévu
;)
ça existe encore ADO ?? je l'utilisais à sa sortie (il y a 10 ans non?) depuis je préfère largement les solutions non propriétaires.
Voui ^^ C'est ce avec quoi j'ai commencé quand je devais m'attaquer aux base de données. J'ai découvert une solution autre récemment, et je vais l'utiliser dans le futur à la place d'ADO...
une classe Requete indépendante d'une connexion à une base est, nécessairement, incomplète. votre choix de récupérer une chaine de connexion via une globale créera surement une rebondance sur le code d'établissement de la connexion. une solution serait de disposer d'une classe gérant la connexion elle-même et d'initialiser la classe Requete avec une instance connexion, on encore que la classe connexion serve de factory à des instances de requetes; en hiérarchisant ces classes, et en définissant leur relation, votre besoin de globales externes disparaitra surement.
C'est une idée que je comptais développer plus tard avec la solution dont je viens de faire connaissance...
Quelque chose me dit que je vais m'attaquer à ça un peu plus tôt que prévu ;)