VB6 ADO et Oracle

cs_jchp Messages postés 2 Date d'inscription mardi 4 novembre 2003 Statut Membre Dernière intervention 5 novembre 2004 - 5 nov. 2004 à 10:05
cs_jchp Messages postés 2 Date d'inscription mardi 4 novembre 2003 Statut Membre Dernière intervention 5 novembre 2004 - 5 nov. 2004 à 11:50
Bonjour

Je tente de développer une classe utilisant MS ADO v2.8. Cette classe doit permettre une connexion et les quelques fonctions simplifiées de manipulation des données : ouveture, fermeture, exécution d'une commande Sql, récupération du résultat d'une requète dans un recordSet etc. Je souhaite que cette classe puisse permettre de travailler sur différentes base : Access, Oracle et MSSql.
Ma classe fonctionne parfaitement sur Access et MSSql.
Mon problème est que la méthode
ADODB.Recordset.open <requète>, <Connection>, <CursorType>
ne me renvoie jamais rien lorsque que je suis (correctement ?)connecté à une base Oracle.

-------------------------------------------------------------
La fonction incriminée :
-------------------------------------------------------------

Public Function OpenSQL(ByRef Rs As ADODB.Recordset, _
ByVal sReq As String, _
Optional CursorType As ADODB.CursorTypeEnum = adOpenStatic, _
Optional LockType As ADODB.LockTypeEnum = adLockReadOnly _
) As Boolean
' ouverture d'une requête SQL

On Error GoTo ErrOpenSQL
Rs.Open sReq, Cnx, CursorType, LockType, adCmdText
DoEvents
OpenSQL = True
Rs.MoveFirst
Exit Function
ErrOpenSQL:
OpenSQL = False
TraceErreurADO
End Function

-------------------------------------------------------------
Exemple de connexion Access qui fonctionne:

"Provider=MSDASQL.1;Persist Security Info=False;Data Source=BUDbase"

-------------------------------------------------------------
Exemple de connexion Oracle qui ne fonctionne pas :
"Provider=MSDASQL.1;Password=tiger;Persist Security Info=True;User ID=APPLI;Data Source=OracleBase"

-------------------------------------------------------------
Mon driver Oracle est :
Oracle ODBC Driver v8.01.07.00

Merci

2 réponses

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
5 nov. 2004 à 10:26
Salut,

Essaie de changer de provider pour la chaine de connection.

Essaie :

- SQLOLEDB
- Ou MSDAORA

J espere que ca t avancera un peu
@+
Julien
-----------------------------------------------------------
:big) Essai ca sinon on trouvera autre chose ;)
-----------------------------------------------------------
0
cs_jchp Messages postés 2 Date d'inscription mardi 4 novembre 2003 Statut Membre Dernière intervention 5 novembre 2004
5 nov. 2004 à 11:50
Merci

Je viens en effet de trouver ceci sur une page internet :
Provider=OraOLEDB.Oracle
et cela fonctionne !

J'ai été incapable de retrouver ceci par la construction de la chaîne de connection avec un composant de type ADODC, et ce quelque soient les combinaisons.

Comment retrouver cette information ?
Où retrouve-t-on cette chaîne "OraOLEDB.Oracle" ?

Avec mes remerciements.
0
Rejoignez-nous