Erreur de l'access oledb
edmichs
Messages postés
11
Date d'inscription
Statut
Membre
Dernière intervention
-
nagaD.scar Messages postés 4272 Date d'inscription Statut Membre Dernière intervention -
nagaD.scar Messages postés 4272 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
salut!
<<Erreur de l'acces oledb
numéro de l'erreur = 2032>> j'ai établie une connexion a une base de données oracle tout marche mais lorsque j'essaie une requête pour interroger ma base de données oracle j'ai ce message d'erreur:
Erreur de l'acces oledb
numero del'erreur = 2032
echec de l'ouverture de le connexion:
source de données <BEST1>
PROVIDER OLEDB <OraOLEDB.Oracle>
delai de l'erreur systeme:
source = OraOLEDB
error Number = -2147467259 (0*80004005)
je travaille avec windev 17, svp je ne sais quoi faire et j'ai besoin d'aide... Merci
salut!
<<Erreur de l'acces oledb
numéro de l'erreur = 2032>> j'ai établie une connexion a une base de données oracle tout marche mais lorsque j'essaie une requête pour interroger ma base de données oracle j'ai ce message d'erreur:
Erreur de l'acces oledb
numero del'erreur = 2032
echec de l'ouverture de le connexion:
source de données <BEST1>
PROVIDER OLEDB <OraOLEDB.Oracle>
delai de l'erreur systeme:
source = OraOLEDB
error Number = -2147467259 (0*80004005)
je travaille avec windev 17, svp je ne sais quoi faire et j'ai besoin d'aide... Merci
A voir également:
- Une opération ole-db en plusieurs étapes a généré des erreurs
- Action ole ✓ - Forum Excel
- Dans la table des matières du document à télécharger, le chapitre 6 et ses 2 sections n'apparaissent pas. trouvez l'erreur dans la structure du document et corrigez-la. mettez à jour la table des matières. quel est le mot formé par les lettres en majuscules de la table des matières après sa mise à jour ? - Forum Word
- Bp bc db - Forum Loisirs / Divertissements
- Probleme OLE - Forum Excel
- Fichier db ✓ - Forum Bases de données
3 réponses
Hello,
La première chose a faire serai de donner le bout de code qui ne fonctionne pas x)
Plus clairement, vu ton poste je dirai que tu as un connecteur de déclaré dans ton analyse. (Je suppose que tu as bien les pilotes oracles et que la connexion fonctionne). Tes requêtes sont elles créer via le requeteur windev ou tu les écris à la main? Tes infos de connexion sont elles dynamiques ou statiques ? Ta connexion est elle bien ouverte?
Bref il faut un peu plus d info car en l etat tout ce que je peux te dire c'est que ta connexion ne fonctionne pas, mais ca va pas aider^^
naga
La première chose a faire serai de donner le bout de code qui ne fonctionne pas x)
Plus clairement, vu ton poste je dirai que tu as un connecteur de déclaré dans ton analyse. (Je suppose que tu as bien les pilotes oracles et que la connexion fonctionne). Tes requêtes sont elles créer via le requeteur windev ou tu les écris à la main? Tes infos de connexion sont elles dynamiques ou statiques ? Ta connexion est elle bien ouverte?
Bref il faut un peu plus d info car en l etat tout ce que je peux te dire c'est que ta connexion ne fonctionne pas, mais ca va pas aider^^
naga
voici mon bout de code:
gsdReqClient est une Source de Données
MaConnexion est une Connexion
// Paramètres de la connexion
SI PAS HDécritConnexion("MaConnexion","system","Stage2016","BEST1","BEST1",hOledbOracle,hOLectureEcriture) ALORS
Info("parametres incorrecte")
Erreur(HErreurInfo())
SINON
// Ouverture de la connexion
HOuvreConnexion(MaConnexion)
Sablier()
// Exécution de la requête
SI PAS HExécuteRequêteSQL(gsdReqClient, hRequêteDéfaut, "SELECT * FROM CLIENT") ALORS
Erreur(HErreurInfo())
SINON
Info("La requête contient "+ HNbEnr(gsdReqClient) + " enregistrements.")
FIN
Sablier(Faux)
FIN
j'ai déjà une connexion via OLE DB établie dans mon analyse, tous les pilotes oracles sont bien installés et la connexion que j'ai établie fonctionne bien, mais lorsque j’exécute une requête ça ne marche pas
gsdReqClient est une Source de Données
MaConnexion est une Connexion
// Paramètres de la connexion
SI PAS HDécritConnexion("MaConnexion","system","Stage2016","BEST1","BEST1",hOledbOracle,hOLectureEcriture) ALORS
Info("parametres incorrecte")
Erreur(HErreurInfo())
SINON
// Ouverture de la connexion
HOuvreConnexion(MaConnexion)
Sablier()
// Exécution de la requête
SI PAS HExécuteRequêteSQL(gsdReqClient, hRequêteDéfaut, "SELECT * FROM CLIENT") ALORS
Erreur(HErreurInfo())
SINON
Info("La requête contient "+ HNbEnr(gsdReqClient) + " enregistrements.")
FIN
Sablier(Faux)
FIN
j'ai déjà une connexion via OLE DB établie dans mon analyse, tous les pilotes oracles sont bien installés et la connexion que j'ai établie fonctionne bien, mais lorsque j’exécute une requête ça ne marche pas
à cette ligne:
tu n indique pas de connexion. Aussi, généralement pour ce type d accès on passe le paramètre "hQueryWithoutCorrection". Donc:
Ensuite je déconseil
dis moi ce que ca donne.
Naga
HExécuteRequêteSQL(gsdReqClient, hRequêteDéfaut, "SELECT * FROM CLIENT")
tu n indique pas de connexion. Aussi, généralement pour ce type d accès on passe le paramètre "hQueryWithoutCorrection". Donc:
HExécuteRequêteSQL(gsdReqClient,MaConnexion, hQueryWithoutCorrection, "SELECT * FROM CLIENT")
Ensuite je déconseil
*et de plutot nommer les champs (pour plus de clareté entre autre)
dis moi ce que ca donne.
Naga
merci déjà mais ça marche pas toujours, voici le nouveau message d'erreur que ça renvoie:
Erreur de l’accès oledb
numéro de l'erreur = 2032
échec de l'ouverture de le connexion:
source de données <BEST1>
PROVIDER OLEDB <OraOLEDB.Oracle>
délai de l'erreur de la connexion :
description = Une opération OLE-DB en plusieurs étapes a généré des erreurs.
Vérifiez chaque valeur d’état OLE-DB disponible.
Aucun travail n'a été effectué.
source=Microsoft OLE DB Service Components
Error Number=-2147217887 (0*8004e21)
j'ai check ma onnexion en mode test ligne par ligne et apparemment c'est la qu'il y'a problème, ça n'ouvre pas la connexion...
tous mes entrées sont bonnes dans mon tnsnames.ora
d'ailleurs voici mon tnsnames.ora:
# tnsnames.ora Network Configuration File: \app\Edy\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle configuration tools.
BEST1 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = Edy-PC)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = BEST1)
)
Erreur de l’accès oledb
numéro de l'erreur = 2032
échec de l'ouverture de le connexion:
source de données <BEST1>
PROVIDER OLEDB <OraOLEDB.Oracle>
délai de l'erreur de la connexion :
description = Une opération OLE-DB en plusieurs étapes a généré des erreurs.
Vérifiez chaque valeur d’état OLE-DB disponible.
Aucun travail n'a été effectué.
source=Microsoft OLE DB Service Components
Error Number=-2147217887 (0*8004e21)
j'ai check ma onnexion en mode test ligne par ligne et apparemment c'est la qu'il y'a problème, ça n'ouvre pas la connexion...
tous mes entrées sont bonnes dans mon tnsnames.ora
d'ailleurs voici mon tnsnames.ora:
# tnsnames.ora Network Configuration File: \app\Edy\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle configuration tools.
BEST1 =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = Edy-PC)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = BEST1)
)
ok, essaye de décrire la connexion de cette manière:
Normalement la source de données est suffisante en oracle.
Ah aussi je te conseil de bien fermet a connexion (HFermeConnexion) au cas ou (en fonction de ta config, tu peux avoir un nombre limité voir unique de connexion - dans le doute redémarrer ton service oracle histoire de couper toute connexion persistantes possibles)
naga
HDécritConnexion("MaConnexion","system","Stage2016","BEST1","",hOledbOracle,hOLectureEcriture)
Normalement la source de données est suffisante en oracle.
Ah aussi je te conseil de bien fermet a connexion (HFermeConnexion) au cas ou (en fonction de ta config, tu peux avoir un nombre limité voir unique de connexion - dans le doute redémarrer ton service oracle histoire de couper toute connexion persistantes possibles)
naga
j'ai le client natif pour windev 12 et non 17, la mise a jour sa se peut??
Tu peux acheter une licence de maj mais il faudra probablement que tu fasse une demande direct.
Les tarifs pour la maj vers la dernière version de windev:
https://www.pcsoft.fr/pcsoft/tarifs.htm#oracle
mais vu que dans ton cas tu veux une maj pour la version 17, il faudra surement que tu leur fasse directement une demande.
Les tarifs pour la maj vers la dernière version de windev:
https://www.pcsoft.fr/pcsoft/tarifs.htm#oracle
mais vu que dans ton cas tu veux une maj pour la version 17, il faudra surement que tu leur fasse directement une demande.
non si chaque dll était portable d'une version à l autre ils vendraient pas beaucoup de licences ^^ (et finalement tu pourrai juste renommer ta dll de la version 11)
En fait la licence est soumise à une clef qui est inscrite lors de la génération de ton exe. S'il n y a pas de licence l exe ne sera pas en mesure de déployer la connexion.
La solution possible serai en fait de faire une dll (peu être qu un composant te le permettrai aussi) windev en version 11 de transaction avec oracle, que tu pourras ensuite importer dans ton projet en 18 pour exploiter indirectement l accès natif. Un peu lourd mais ca devrai fonctionner.
En fait la licence est soumise à une clef qui est inscrite lors de la génération de ton exe. S'il n y a pas de licence l exe ne sera pas en mesure de déployer la connexion.
La solution possible serai en fait de faire une dll (peu être qu un composant te le permettrai aussi) windev en version 11 de transaction avec oracle, que tu pourras ensuite importer dans ton projet en 18 pour exploiter indirectement l accès natif. Un peu lourd mais ca devrai fonctionner.