IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

connection a une base de données oracle 10g


Sujet :

VB 6 et antérieur

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    salut a tous,j ai un projet a faire en visual basic 6 qui est une application de gestion de configuration,pour cela je dois faire appel a une base de données ORACLE 10g que je n ai jamais utilisé

    J ai deja utiliser le visual basic avec des bases de données ACCES ce qui est vraiment un jeu d enfant mais la....

    Est ce que quelqu un peut me dire comment faire pour ce connecter et faire des requetes,j ai lu le tutoriel sur ce site mais il ne pas aider
    help me

    eh di donc faut pa vous bousculer pour repondre hein,allez y un par un

  2. #2
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 173
    Points : 1 418
    Points
    1 418

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    c cool vld44 mais ce qu il y a dans ce tutoriel(je l avais deja lu)n est pas clair,parce que je n ai jamais manipule rune base de données oracle et qu en ACCES c est beaucoup plus facile,il suffit de 3 petites lignes
    j attends toujours uen main qui se tendra vers moi

  4. #4
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    Citation Envoyé par le_psycho
    c cool vld44 mais ce qu il y a dans ce tutoriel(je l avais deja lu)n est pas clair,parce que je n ai jamais manipule rune base de données oracle et qu en ACCES c est beaucoup plus facile,il suffit de 3 petites lignes
    j attends toujours uen main qui se tendra vers moi
    moi ce que je trouve pas clair c'est tes messages ... ! où est-il ce morceau de code ...? qu'as tu fais ..?

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    j ai un programme en VB6 mais la j ai pas de probleme ,la ou je bloque c est quand je dois ouvir ma base de données oracle
    j ai creer deux tables sur oracle,une table serveurs(qui contient des id des different serveurs,leur emplacment ,le noeud ou ils se trouvent) et uen table routeur(qui contient a peu pres la meme chose)

    Le probleme c est que je ne sais pas comment s appelle ma base de données parce que quand je met le code en bas ,il me met qu il ya une erreur du genre :"source d edonnées introuvable et nom de pilote non specifié"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    'Déclaration de la variable de connexion
    Dim cnx As ADODB.Connection
    Set cnx = New ADODB.Connection
     
     
    'Définition de la chaîne de connexion
    cnx.ConnectionString = "UID=" & NomUtilisateur & ";PWD=" & MotDePasse & ";" & "DRIVER={SQL Server};Server=" & NomServeur & ";Database=" & NomBaseDeDonnées & ";"
     
    'Ouverture de la base de données
    cnx.Open
    End Sub
    heeeeeeelp j agonise

  6. #6
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    Citation Envoyé par le_psycho
    ...
    Le probleme c est que je ne sais pas comment s appelle ma base de données ...
    et si tu le sais pas comment veux tu qu'on le sache nous le nom de ta base de donnée..?

  7. #7
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 173
    Points : 1 418
    Points
    1 418
    Par défaut
    je pense qu'il faut que tu voies avec ton DBA le TNS de ta base, et de cette façon tu pourras utiliser "DATASOURCE=montns" au lieu de "serveur" & "database"

    D'autre part il te manque le user oracle à connecter.

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    merci de votre aide ,MAIS c est quoi le "user"???

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    je ne sais pas comment s appelle ma base de données parce que a aucun moment oracle ma demandé de sauvegarder sous tel ou tel nom donc forcemment.....je me suis contenté de creer des tables et c est tout


    encore une fois ne vous bousculez pas pour repondre,un seul a la fois

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    Je voudrais aussi savoir a quoi sert le oracle serveur ou client ???
    est ce qu il est indispensable,parce que moi je ne l ai pas installer

  11. #11
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2006
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Argentine

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 173
    Points : 1 418
    Points
    1 418
    Par défaut
    oula

    Bon je pense que tu prends le problème dans le mauvais sens.
    Installe oracle proprement

    Sauvegarde ton TNSNAMES.ORA (.\oracle\ora92\network\admin) pour ton instance oracle de la sorte :


    NOMDEMABASE =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = NOMDEMONPC)(PORT = 1521))
    )
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = NOMDEMABASE)
    )
    )

    Relance oracle, ajoute les listeners qui vont bien ...

    Ensuite, dans VB, la connection string c'est :

    OraOLEDB.Oracle.1;Password=MONPASS;Persist Security Info=True;User ID=MONSCHEMAORACLE;Data Source=NOMDEMABASEDUTNSNAMES.ORA;Extended Properties=""

    Voilà, bien sûr il faut installer OraOLEDB provider et remplacer "OraOLEDB.Oracle.1" par le nom du provider indiqué dans les outils d'administration > sources de données ODBC de windows.

    A ton service.

    PS : toutes ces infos sont valides avec Oracle 9i, pour 10g je sais pas ...

  12. #12
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    ce que tu a mis vldd44 c est valable pour oracle 9i je crois,parce que pour le 10g j ai jamais vu ca

    En fait j avance petit a petit dans mon probleme et maintenant j ai une erreur que me met le compilateur VB6 qui est la suivante :
    [Microsoft][Gestionnaire de pilote ODBC]Source de données introuvable et nom de pilote non spécifies
    Et voila le petit bout de code associé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Set cnx = New ADODB.Connection
     
     
    cnx.ConnectionString = "UID=hr" & ";PWD=hr" & ";" & "DRIVER=msdaora;Server=" & NomServeur & ";Database=base2données" & NomBaseDeDonnées & ";"
     
    MsgBox cnx.ConnectionString
     
    cnx.Open
    En fait le code la ,je l ai pris du tutoriel du site,je ne l ai pas bien compris d ailleurs
    Je pense que le probleme vient de "DRIVER=msdaora" je ne sais d ailleurs pas ce que c est!!!!
    merci d avance pour votre aide

  13. #13
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    Vu qu il n y a pas beaucoup de reponse je vais reformuler mon probleme :

    tout ce que je veux c est acceder a une base de données(la mienne s appellent "base2données") oracle 10g grace au VB6,je veux seulement le code pour pouvoir acceder a mes tables

    j ai deja vu le tutoriel de ce site mais amlheuresement je ne l ai pas compris et il me met des erreurs quand je l ecris dans mon code

  14. #14
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    si on te réponds pas de suite c'est qu'on n'as pas la solution ...! essai de nous en dire plus ....

    par exemple que retourne ta ligne de code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    MsgBox cnx.ConnectionString
    si ton code "plante" avant cette ligne , passe par une variable string intermédiaire afin de nous afficher le résultat de ta concaténation ..

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Dim st As string 
    st = "UID=hr" & ";PWD=hr" & ";" & "DRIVER=msdaora;Server=" & NomServeur & ";Database=base2données" & NomBaseDeDonnées & ";"
     
    Debug.print st ' récupère le contenu de ta concaténation dans la fenêtre début CTRL +G

  15. #15
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 22
    Points : 11
    Points
    11
    Par défaut rep
    La ligne de code "MsgBox cnx.ConnectionString" retourne ce qu il faut c est a dire a "user" ya ecrit hr qui est mon identifiant a pwd il y a hr qui est aussi mon mot de passe ,il retourne le nom de la base de données qui est est base2donées,
    le message box en fait je l ai mis juste pour voir ce qu il me mettait et apparament il met rien de faux
    En fait le compilateur plante quand je lui demande d ouvrir ma base
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Set cnx = New ADODB.Connection     cnx.ConnectionString = "UID=hr" & ";PWD=hr" & ";" & "DRIVER=msdaora;Server=" & NomServeur & ";Database=base2données" & NomBaseDeDonnées & ";"   MsgBox cnx.ConnectionString   
    cnx.Open   'ici le compilateur s arrete et me met l erreur comme quoi pilote introuvable...
    merci de votre aide

  16. #16
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    et NomServeur..?

    enlève aussi tout ces & .. inutiles ..,
    pourquoi écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    "UID=hr" & ";PWD=hr"
    et pas directement
    si tu n'utilise pas de variables pour stocker ton UID ou ton PWD ...

    si ça ne corrige pas ton probléme cela aura au moins le mérite de rendre ton code plus clair...

    ensuite lorsque tu cite un tutoriel rajoute un lien vers celui-ci pour nous éviter de chercher, (ils sont nombreux les tutos sur DVP..)


  17. #17
    Membre expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Points : 3 685
    Points
    3 685
    Par défaut
    Citation Envoyé par le_psycho
    La ligne de code "MsgBox cnx.ConnectionString" retourne ce qu il faut c est a dire a "user" ya ecrit hr qui est mon identifiant a pwd il y a hr qui est aussi mon mot de passe ,il retourne le nom de la base de données qui est est base2donées,
    le message box en fait je l ai mis juste pour voir ce qu il me mettait et apparament il met rien de faux
    En fait le compilateur plante quand je lui demande d ouvrir ma base
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Set cnx = New ADODB.Connection     cnx.ConnectionString = "UID=hr" & ";PWD=hr" & ";" & "DRIVER=msdaora;Server=" & NomServeur & ";Database=base2données" & NomBaseDeDonnées & ";"   MsgBox cnx.ConnectionString   
    cnx.Open   'ici le compilateur s arrete et me met l erreur comme quoi pilote introuvable...
    merci de votre aide
    Pourrais tu plutot soit faire une capture d'écran de ton msgbox, soit faire un debug.print et nous faire un copier/coller de la valeur de cnx.ConnectionString ?
    Pour VB6 : N'oubliez pas d'aller voir la FAQ et les Tutoriels
    Vous trouvez une reponse particulierement utile ? Votez pour !

  18. #18
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    merci beaucoup bbil de ton aide,je sais que je suis un peu floue dans mes questions
    Alors en fait le tutoriel que je n ai pas beaucoup compris c est celui de "sebastien curutchet" :"Comment acceder a une base de données via ADO en visual basic",deja je trouve personnelement que ADO c est super compliqué parce que quand j utilisais ACCESS en VB il n y avait pas besion de tout ca,c etait beaucoup plus simple...

    Alors en fait bbil j ai fait ce que tu ma dit ,l erreur ne vient pas de la mais effectivement le code est plus clair et beaucoup lisible,donc j ai maintenant ce bout de code et malheuresement c est la meme erreur que me met ce maudit compilateur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Dim cnx As ADODB.Connection
    Set cnx = New ADODB.Connection
     
     
    cnx.ConnectionString = "UID=hr;PWD=hr;DRIVER=msdaora;Database=base2données;"
     
    MsgBox cnx.ConnectionString
     
    cnx.Open  ' c est ici que le compilateur bloque
    L erreur toujours au niveau de "cnx.Open" est : "source de données introuvable et nom de pilote non specifié'

    Pour toi "ohmonbateau" je suis desolé mais je n arrive pas a inserer ma capture d ecran mais grosso modo les valeurs dans le message box sont bonnes ,elles concordent avec ce que j ai rentrer,en fait je pense que le probleme vient du driver???!!!!

  19. #19
    Membre expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Points : 3 685
    Points
    3 685
    Par défaut
    As tu essayé avec "PROVIDER" au lieu de "DRIVER" ?
    Pour VB6 : N'oubliez pas d'aller voir la FAQ et les Tutoriels
    Vous trouvez une reponse particulierement utile ? Votez pour !

  20. #20
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 22
    Points : 11
    Points
    11
    Par défaut
    waaa ohmonbato je crois qu on s approche,j ai mis PROVIDER au lieu de driver,mais la il me met une autre erreur,
    l erreur c est que l acces a la base de données est refusé parce que le mot de passe ou le login est faux,mais malheuresement le login et le mot de passe que je rentre sont les bons

    merci beaucoup de votre aide les gars c est cool

    bbil j ai lu ton message pour le DSN mais dans ce cas qu est ce que je dois mettre quand il faut mettre le nom du DSN et d abord c est quoi un DSN???

    Voici le nouveau code que j ai mis et il me met qu il y a un probleme de mot de passe et de nom d utilisateur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Dim cnx As ADODB.Connection
    Set cnx = New ADODB.Connection
     
     
    cnx.ConnectionString = "UID=system;PWD=maroc;PROVIDER=OraOLEDB.Oracle; Database=base2données;"
     
    MsgBox cnx.ConnectionString
     
    cnx.Open 'toujours ici le blocage
    merci

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. reverse engineering d'une base de donnée oracle 10g
    Par akilam87 dans le forum PowerAMC
    Réponses: 3
    Dernier message: 23/07/2010, 18h28
  2. Réponses: 6
    Dernier message: 26/05/2010, 14h21
  3. connection a une base de données ORACLE 10g
    Par le_psycho dans le forum VB.NET
    Réponses: 4
    Dernier message: 26/07/2007, 13h46
  4. Connection a une base de données Oracle
    Par dim971 dans le forum Accès aux données
    Réponses: 4
    Dernier message: 12/03/2007, 11h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo