Connexion à Oracle avec ADO

Bonjour,

Je me permets de poster car j'ai beau chercher sur différents forums, impossible de résoudre mon problème.

J'essaye de me connecter via Excel (VBA) sur une base de données Oracle :

Sub main()

    Dim cnx As ADODB.CONNECTION

    Set cnx = New ADODB.CONNECTION

    cnx.ConnectionString = "Data Source=test;User Id=test;Password=test;"
    cnx.Open

    cnx.Close

End Sub

Dès que je tente de me connecter j'ai l'erreur :

[Microsoft][Gestionnaire de pilotes ODBC] Source de données introuvable et nom de pilote non spécifié. 

J'ai pourtant la référence "Microsoft ActiveX Data Objects 6.1 Library" d'installée.

J'ai trouvé le format de mon ConnectionString sur le site connectionstrings.

Une idée ? :(

Bonjour Rudeus,

Si c'était si simple, je pourrais arrêter mon métier

Voir peut-être ce sujet
https://stackoverflow.com/questions/47674077/vba-adodb-connect-to-remote-oracle-db

A+

Merci pour ton retour.

J'ai tenté plusieurs chose.

J'ai modifié mon connectionString pour mettre :

Provider=OraOLEDB.Oracle;Data Source=test;User Id=test;Password=test;

Erreur retournée après quelques secondes de chargement :

ORA-12154 : TNS : l'identificateur de connexion indiqué n'a pas pu être résolu

Et j'ai tenté avec :

Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=SSH)(HOST=monhote)(PORT=22))(CONNECT_DATA=(SERVICE_NAME=MyOracleSID)));User Id=test;Password=test;

J'ai l'erreur :

nom de source de données trop long.

Je ne comprends vraiment pas pourquoi ça ne fonctionne pas alors que les id de connexion sont ok.

Bonjour,

deux exemples de connexion ADO (pas Oracle) qui ont fonctionné . On sait jamais

Inclure mot de passe connexion ODBC dans une macro

Extraire des données sans ouvrir le fichier

Bonjour fg2b,

Pour le premier lien je ne comprends pas trop comment inclure :

Source:="ODBC;DSN=XXX ; UID= username ,PWD= password"

Je peux le mettre dans mon connectionstring tel quel ?

Pour le deuxième lien, j'ai tenté en modifiant les paramètres :

Source.Open "Provider=Microsoft.ACE.OLEDB.12.0;" & _
        "Data Source=" & Fichier & ";Extended Properties=""Excel 12.0;HDR=No;"";"

Par ceux d'Oracle mais ça ne fonctionne pas.

ORA-12154 : TNS : l'identificateur de connexion indiqué n'a pas pu être résolu

Bonjour,

pour le premier lien , l'idée est de declarer une DSN ,

Il faut aller dans le dossier C:\Windows\SysWOW64 et utiliser odbcad32.exe pour base Oracle

Il faut ajouter une SOURCE DE DONNEES UTILISATEUR en parcourant le PC et lui donner un nom

et ensuite remplacer les XXX par le nom que tu as donné a ta DSN et username et password

et ce code devrait fonctionner

Source:="ODBC;DSN=XXX ; UID= username ,PWD= password"

capture d ecran 2024 02 08 164717

Merci pour ton retour.

Par rapport à mon code, où dois-je ajouter le Source:="ODBC;DSN=XXX ; UID= username ,PWD= password" ?

Comme ceci ?

cnx.ConnectionString = Source:="ODBC;DSN=XXX ; UID= username ,PWD= password"

Salut Rudeus

Content de savoir que tu as pu connecter ta base de données.

TU pourrais donner la synatxe exacte et dire ou ca coincait?

Cdlt

Bonjour,

GenereCSTRING = "Provider=OraOLEDB.Oracle.1;Password=" & Password & ";Persist Security Info=True;User ID=" & User & ";Data Source=" & Base

https://download.microsoft.com/download/9/a/1/9a1256c9-d301-4fdc-93b9-370c5b2f9827/mdac28sdk.msi

https://www.oracle.com/fr/database/technologies/releasenote-odbc-ic.html

Rechercher des sujets similaires à "connexion oracle ado"