Connexion à une base de données d'Oracle via VB urgent?
jiraf
Messages postés19Date d'inscriptionjeudi 21 mars 2002StatutMembreDernière intervention29 avril 2002
-
18 avril 2002 à 17:26
almey
Messages postés48Date d'inscriptionsamedi 19 avril 2003StatutMembreDernière intervention 2 mai 2006
-
16 août 2004 à 16:03
S'il vous plaît j'ai besoin de faire une connexion à une base de données d'Oracle via VB et je ne sais pas si j'utilse la connexion RDO ou la connexion ADO ou la connexion DAO ,actuellement j'utilse RDO mais il me donne une erreur "variable rdoconnection non connecté à une source de données.
le code que j'ai ecrit est le suivant:
Public cn As New rdoConnection
With cn
.connect = "UID=" &Text1.Text & ";PWD=" &Text2.Text & ";Database=cdw;" _
& "Server=10.0.64.31;Driver={Microsoft ODBC for Oracle}" _
& "DSN='cdw';"
.EstablishConnection rdDriverNoPrompt, _
True, rdAsyncEnable
End With
sachant que text1.text et text2.text sont le uid et le mot de passe que je donne
jiraf
Messages postés19Date d'inscriptionjeudi 21 mars 2002StatutMembreDernière intervention29 avril 2002 19 avril 2002 à 10:53
j'ai ecrit le code que vous m'avez proposé:
Dim conn1 As ADODB.Connection
Dim req as string
conn1.ConnectionString = "provider=MSDAORA,1;password=mydb;user ID=myid;Data Source=mydb;Persist Security Info=true"
req = " delete * from MRKTG_CRITERION;"
conn1.Execute req
mais il me signale l'erreur suivant:
"variable with non définie"
d'abord ce code pour faire une connexion ADO mais est ce que une connexion ADO permet d'appeler une procédure stokée de la base de données d'Oracle car moi j'utilise une connexion RDO car RDO permet d'appeler les procédures stokées de serveur base de données Oracle.
Je porte à votre connaissance que j'utilise visual basic entreprise.
cs_pimousse75
Messages postés138Date d'inscriptionjeudi 17 janvier 2002StatutMembreDernière intervention22 octobre 2002 19 avril 2002 à 11:07
Plusieurs choses
1/ADODB permet d'attaquer des procedure sotckees en base. Je le fais !
2/ Enleve * de : delete * from MRKTG_CRITERION
3/ mets un point d'arret et verifie que tes params de connexion st bien passes sur :
conn1.ConnectionString = "provider=MSDAORA,1;password=mydb;user ID=myid;Data Source=mydb;Persist Security Info=true"
A mon avis non! Il faut que tu concatenes !
jiraf
Messages postés19Date d'inscriptionjeudi 21 mars 2002StatutMembreDernière intervention29 avril 2002 19 avril 2002 à 11:30
j'ai ecrit le code suivant:
Dim conn1 As New ADODB.Connection
conn1.ConnectionString = "provider=MSDAORA,1;password=scoring;user ID=scoring;Data Source=scoring;Persist Security Info=true"
req = " delete from MRKTG_CRITERION;"
conn1.Execute req "ligne d'erreur"
mais il me signale l'erreur suivant:
"l'opération demandeée par l'application n'est pas autorisée si l'objet est fermé" à la ligne signalé ci-dessus.
Vous n’avez pas trouvé la réponse que vous recherchez ?
jiraf
Messages postés19Date d'inscriptionjeudi 21 mars 2002StatutMembreDernière intervention29 avril 2002 19 avril 2002 à 12:29
j'ai fait le test d'erreur et connectDB=0 ce qui signifie que la connexion est passe mais il me signale une erreur à conn1.Execute req l'erreur est le suivant:
erreur d'éxécution '-2147217900(80040e14)':ORA-00911:caractère non valide
jiraf
Messages postés19Date d'inscriptionjeudi 21 mars 2002StatutMembreDernière intervention29 avril 2002 19 avril 2002 à 18:24
Merci pimousse75 le programme marche avec ça,
encore merci beaucoup.
je vous demande maintenant s'il vous plaît comment on fait appel à une procédure stockées de la base de données de serveur d'oracle8i à partir du code VB de l'interface client sachant que nous avons maintenant fait la connexion ADO.
jiraf
Messages postés19Date d'inscriptionjeudi 21 mars 2002StatutMembreDernière intervention29 avril 2002 20 avril 2002 à 11:56
-------------------------------
Réponse au message :
-------------------------------
Merci pimousse75 le programme marche avec ça,
encore merci beaucoup.
je vous demande maintenant s'il vous plaît comment on fait appel à une procédure stockées de la base de données de serveur d'oracle8i à partir du code VB de l'interface client sachant que nous avons maintenant fait la connexion ADO. s'il vous plaît répondez moi car c'est le but de faire la connexion car si ADO ne permet pas d'appeler une procédure stockée dans la base de données d'oracle à distance je ne peux pas avancer dans le projet
-------------------------------
Réponse au message :
-------------------------------
Enleve le ; et je pense que ce sera ok
de tte maniere a priori tu es connecte et c'est ta requete qui deconne
-------------------------------
Réponse au message :
-------------------------------
j'ai fait le test d'erreur et connectDB=0 ce qui signifie que la connexion est passe mais il me signale une erreur à conn1.Execute req l'erreur est le suivant:
erreur d'éxécution '-2147217900(80040e14)':ORA-00911:caractère non valide
-------------------------------
Réponse au message :
-------------------------------
Essaie: conn1.Execute req
sinon
Assure toi que tu es connecté via la gestion d'erreur suivante
Public Function ConnectDB(pName As String, pPasswd As String, pDBName As String) As Integer
Set Cmd1 = New ADODB.Command
Cmd1.ActiveConnection = Conn1
' Trap any error/exception
ERRConnect:
On Error GoTo ERRGlobal
If (Error <> " ") Then
ConnectedToOracle = True
ConnectDB = 0
Connect_String = pName & "/" & pPasswd
Connect_Database = pDBName
Else
ConnectedToOracle = False
ConnectDB = Conn1.Errors(0)
End If
Exit Function
ERRGlobal:
ConnectDB = -1
End Function
-------------------------------
Réponse au message :
-------------------------------
j'ai ecrit le code suivant:
Dim conn1 As New ADODB.Connection
conn1.ConnectionString = "provider=MSDAORA,1;password=scoring;user ID=scoring;Data Source=scoring;Persist Security Info=true"
req = " delete from MRKTG_CRITERION;"
conn1.Execute req "ligne d'erreur"
mais il me signale l'erreur suivant:
"l'opération demandeée par l'application n'est pas autorisée si l'objet est fermé" à la ligne signalé ci-dessus.
-------------------------------
Réponse au message :
-------------------------------
Plusieurs choses
1/ADODB permet d'attaquer des procedure sotckees en base. Je le fais !
2/ Enleve * de : delete * from MRKTG_CRITERION
3/ mets un point d'arret et verifie que tes params de connexion st bien passes sur :
conn1.ConnectionString = "provider=MSDAORA,1;password=mydb;user ID=myid;Data Source=mydb;Persist Security Info=true"
A mon avis non! Il faut que tu concatenes !
-------------------------------
Réponse au message :
-------------------------------
j'ai ecrit le code que vous m'avez proposé:
Dim conn1 As ADODB.Connection
Dim req as string
conn1.ConnectionString = "provider=MSDAORA,1;password=mydb;user ID=myid;Data Source=mydb;Persist Security Info=true"
req = " delete * from MRKTG_CRITERION;"
conn1.Execute req
mais il me signale l'erreur suivant:
"variable with non définie"
d'abord ce code pour faire une connexion ADO mais est ce que une connexion ADO permet d'appeler une procédure stokée de la base de données d'Oracle car moi j'utilise une connexion RDO car RDO permet d'appeler les procédures stokées de serveur base de données Oracle.
Je porte à votre connaissance que j'utilise visual basic entreprise.
-------------------------------
Réponse au message :
-------------------------------
-------------------------------
Réponse au message :
-------------------------------
S'il vous plaît j'ai besoin de faire une connexion à une base de données d'Oracle via VB et je ne sais pas si j'utilse la connexion RDO ou la connexion ADO ou la connexion DAO ,actuellement j'utilse RDO mais il me donne une erreur "variable rdoconnection non connecté à une source de données.
le code que j'ai ecrit est le suivant:
Public cn As New rdoConnection
With cn
.connect = "UID=" &Text1.Text & ";PWD=" &Text2.Text & ";Database=cdw;" _
& "Server=10.0.64.31;Driver={Microsoft ODBC for Oracle}" _
& "DSN='cdw';"
.EstablishConnection rdDriverNoPrompt, _
True, rdAsyncEnable
End With
sachant que text1.text et text2.text sont le uid et le mot de passe que je donne
jiraf
Messages postés19Date d'inscriptionjeudi 21 mars 2002StatutMembreDernière intervention29 avril 2002 20 avril 2002 à 11:57
Merci pimousse75 le programme marche avec ça,
encore merci beaucoup.
je vous demande maintenant s'il vous plaît comment on fait appel à une procédure stockées de la base de données de serveur d'oracle8i à partir du code VB de l'interface client sachant que nous avons maintenant fait la connexion ADO. s'il vous plaît répondez moi car c'est le but de faire la connexion car si ADO ne permet pas d'appeler une procédure stockée dans la base de données d'oracle à distance je ne peux pas avancer dans le projet
jiraf
Messages postés19Date d'inscriptionjeudi 21 mars 2002StatutMembreDernière intervention29 avril 2002 22 avril 2002 à 11:26
pour cette requete:
req = "Begin Dispo_Move(to_date('" & Datedeb.FormatText & "','dd/mm/yyyy')); End;"
ce que je comprends: le nom de procédure c'est Dispo_Move avec un argument est ce que c'est ça?
si c'est ça alors comment lancer l'exécution de cette procédure ou cette requete sachant qu'on a la connexion ADODB qu'on a fait?
autre chose est ce que la connexion qu'on a fait ça reste valable lorsque la base de données de serveur oracle8i est distant ?car dans ce premier temps je développe l'interface client et les traitements de serveur dans une même machine mais lorsque on fait l'étape de test il faut qu'il doit marcher avec l'interface VB dans le client et le serveur oracle est distant.
autre chose est ce que vous pouvez me donner votre adresse email, mon adresse email est :
klimami@hotmail.com
Merci infiniment
cs_pimousse75
Messages postés138Date d'inscriptionjeudi 17 janvier 2002StatutMembreDernière intervention22 octobre 2002 22 avril 2002 à 11:48
-------------------------------
Réponse au message :
-------------------------------
pour cette requete:
req = "Begin Dispo_Move(to_date('" & Datedeb.FormatText & "','dd/mm/yyyy')); End;"
ce que je comprends: le nom de procédure c'est Dispo_Move avec un argument est ce que c'est ça?
Oui C'est ca !
si c'est ça alors comment lancer l'exécution de cette procédure ou cette requete sachant qu'on a la connexion ADODB qu'on a fait?
Dim req As String
req = "Begin Dispo_Move(to_date('" & DateDeb.FormatText & "','dd/mm/yyyy')); End;"
Conn1.Execute req
autre chose est ce que la connexion qu'on a fait ça reste valable lorsque la base de données de serveur oracle8i est distant ?car dans ce premier temps je développe l'interface client et les traitements de serveur dans une même machine mais lorsque on fait l'étape de test il faut qu'il doit marcher avec l'interface VB dans le client et le serveur oracle est distant.
Là je serai moins affirmatif ! En installant des couches clientes 8 (sur des postes clients), alors que le serveur est en 7.3.4 nous avons eu des pbs de connexion....En revanche si le poste client est en 7.3.4 pas de pb de connexion. C'est donc à toi de tester les differentes possibilites !!!
autre chose est ce que vous pouvez me donner votre adresse email, mon adresse email est :
klimami@hotmail.com
Merci infiniment
-------------------------------
Réponse au message :
-------------------------------
Alors cela fonctionne-t-il ?
-------------------------------
Réponse au message :
-------------------------------
-------------------------------
Réponse au message :
-------------------------------
Merci pimousse75 le programme marche avec ça,
encore merci beaucoup.
je vous demande maintenant s'il vous plaît comment on fait appel à une procédure stockées de la base de données de serveur d'oracle8i à partir du code VB de l'interface client sachant que nous avons maintenant fait la connexion ADO. s'il vous plaît répondez moi car c'est le but de faire la connexion car si ADO ne permet pas d'appeler une procédure stockée dans la base de données d'oracle à distance je ne peux pas avancer dans le projet
-------------------------------
Réponse au message :
-------------------------------
Enleve le ; et je pense que ce sera ok
de tte maniere a priori tu es connecte et c'est ta requete qui deconne
-------------------------------
Réponse au message :
-------------------------------
j'ai fait le test d'erreur et connectDB=0 ce qui signifie que la connexion est passe mais il me signale une erreur à conn1.Execute req l'erreur est le suivant:
erreur d'éxécution '-2147217900(80040e14)':ORA-00911:caractère non valide
-------------------------------
Réponse au message :
-------------------------------
Essaie: conn1.Execute req
sinon
Assure toi que tu es connecté via la gestion d'erreur suivante
Public Function ConnectDB(pName As String, pPasswd As String, pDBName As String) As Integer
Set Cmd1 = New ADODB.Command
Cmd1.ActiveConnection = Conn1
' Trap any error/exception
ERRConnect:
On Error GoTo ERRGlobal
If (Error <> " ") Then
ConnectedToOracle = True
ConnectDB = 0
Connect_String = pName & "/" & pPasswd
Connect_Database = pDBName
Else
ConnectedToOracle = False
ConnectDB = Conn1.Errors(0)
End If
Exit Function
ERRGlobal:
ConnectDB = -1
End Function
-------------------------------
Réponse au message :
-------------------------------
j'ai ecrit le code suivant:
Dim conn1 As New ADODB.Connection
conn1.ConnectionString = "provider=MSDAORA,1;password=scoring;user ID=scoring;Data Source=scoring;Persist Security Info=true"
req = " delete from MRKTG_CRITERION;"
conn1.Execute req "ligne d'erreur"
mais il me signale l'erreur suivant:
"l'opération demandeée par l'application n'est pas autorisée si l'objet est fermé" à la ligne signalé ci-dessus.
-------------------------------
Réponse au message :
-------------------------------
Plusieurs choses
1/ADODB permet d'attaquer des procedure sotckees en base. Je le fais !
2/ Enleve * de : delete * from MRKTG_CRITERION
3/ mets un point d'arret et verifie que tes params de connexion st bien passes sur :
conn1.ConnectionString = "provider=MSDAORA,1;password=mydb;user ID=myid;Data Source=mydb;Persist Security Info=true"
A mon avis non! Il faut que tu concatenes !
-------------------------------
Réponse au message :
-------------------------------
j'ai ecrit le code que vous m'avez proposé:
Dim conn1 As ADODB.Connection
Dim req as string
conn1.ConnectionString = "provider=MSDAORA,1;password=mydb;user ID=myid;Data Source=mydb;Persist Security Info=true"
req = " delete * from MRKTG_CRITERION;"
conn1.Execute req
mais il me signale l'erreur suivant:
"variable with non définie"
d'abord ce code pour faire une connexion ADO mais est ce que une connexion ADO permet d'appeler une procédure stokée de la base de données d'Oracle car moi j'utilise une connexion RDO car RDO permet d'appeler les procédures stokées de serveur base de données Oracle.
Je porte à votre connaissance que j'utilise visual basic entreprise.
-------------------------------
Réponse au message :
-------------------------------
-------------------------------
Réponse au message :
-------------------------------
S'il vous plaît j'ai besoin de faire une connexion à une base de données d'Oracle via VB et je ne sais pas si j'utilse la connexion RDO ou la connexion ADO ou la connexion DAO ,actuellement j'utilse RDO mais il me donne une erreur "variable rdoconnection non connecté à une source de données.
le code que j'ai ecrit est le suivant:
Public cn As New rdoConnection
With cn
.connect = "UID=" &Text1.Text & ";PWD=" &Text2.Text & ";Database=cdw;" _
& "Server=10.0.64.31;Driver={Microsoft ODBC for Oracle}" _
& "DSN='cdw';"
.EstablishConnection rdDriverNoPrompt, _
True, rdAsyncEnable
End With
sachant que text1.text et text2.text sont le uid et le mot de passe que je donne
almey
Messages postés48Date d'inscriptionsamedi 19 avril 2003StatutMembreDernière intervention 2 mai 2006 1 mai 2004 à 21:08
Salut ...
J'ai un problème du même genre d'idée ...
J'aimerais faire une connection à une base de données MySql distante ... est-ce que quelqu'un à une idée pour la résolution à ce problème ??
enimistekof
Messages postés2Date d'inscriptionlundi 17 mai 2004StatutMembreDernière intervention17 mai 2004 17 mai 2004 à 13:17
je veux faire une application en VB d'une base de donnée Oracle via ODBC. j'ai besoin d'aide sur tout en ce qui concèrne comment lié VB avec Oracle via ODBC. Merci beaucoup si vous pouvez m'aider.
Egalon
Messages postés124Date d'inscriptionlundi 26 avril 2004StatutMembreDernière intervention17 juin 2011 10 août 2004 à 09:56
Salut
J'ai aussi des problèmes avec des procédures stockées qui me saoule grave à donf (j'exagère juste un petit peu)
DONC, j'ai parcouru mon site favori et j'ai trouvé cette longue conversation (ou chaque message reprend tou ce qui a été dit avant :sad) )
J'ai logiquement pas réussi à réaliser l'appel de mes procédures stockées, je suis tombé sur ce qu'on appelle, nous les professionnels une COUILLE SEVERE:
Erreur d'éxécution '-2147217900 (80040e14)':
[Microsoft][ODBC driver for Oracle][Oracle]ORA-06550: ligne 1, colonne 16:
PLS-00103: Synmpbole">" rencontré à la palce d'un des symboles suivants :
J'ai donc pris le coté facile de la chose et désormais j'appel mes procédures et fonction stockées par:
select ma_fonction_stockée() from dual
Et en plus je peux balancer çà dans un recordset.
'ELLE EST PAS BELLE LA VIE'
Egalon
Messages postés124Date d'inscriptionlundi 26 avril 2004StatutMembreDernière intervention17 juin 2011 10 août 2004 à 09:59
Par contre almey, MySQL j'ai jamais fait, mais çà doit être tout bidon. Pis tout le monde utilise çà (sauf moi, mais bon j'ai pas eu le choix).
Tu dois avoir trouvé facilement depuis.