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

Access Discussion :

[Access 2003][Oracle 9iR2] Tables attachées - mot de passe


Sujet :

Access

  1. #1
    Membre habitué
    Inscrit en
    Juillet 2004
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 110
    Points : 137
    Points
    137
    Par défaut [Access 2003][Oracle 9iR2] Tables attachées - mot de passe
    Bonjour,

    J'ai une application Access 2003 qui ne contient aucunes tables.
    Tout est sur un serveur Oracle 9iR2.

    Je sais attaquer en VB la base Oracle avec l'ODBC en créant une connexion (en DAO) pour lire des enregistrements.

    Mais là où je suis coincé et pour les zones de liste déroulante.
    Si je place une requête dans la propriété Contenu (RowSource), je dois bien passer par des tables attachées. Et le problème, c'est que j'ai l'interface ODBC qui s'ouvre pour me demander le mot de passe.
    Je veux que l'utilisateur ne voit pas cet écran et n'ait pas à taper un mot de passe.

    J'ai essayé d'attacher une table par VB, ça marche, mais il me change ma chaîne de connexion où j'avais passé le nom d'utilisateur et mot de passe. Et hop, au premier accès, il m'ouvre l'écran ODBC.

    Je reste coincé...

    Merci de votre aide !

  2. #2
    Membre habitué
    Inscrit en
    Novembre 2005
    Messages
    136
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 136
    Points : 163
    Points
    163
    Par défaut
    hello,

    quand, dans ton code, tu fais reference à la connexion odbc, il doit être possible d'y indiquer le mot de passe
    quelquechose comme:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     
        Dim NomConnexion As New ADODB.Connection
        NomConnexion.Open "dsn=NomLien;uid=admin;[b]pwd=[/b]"

  3. #3
    Membre habitué
    Inscrit en
    Juillet 2004
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 110
    Points : 137
    Points
    137
    Par défaut
    Bonjour,

    Non, le problème n'est pas d'ouvrir une connexion (DAO ou ADO). Cela fonctionne sans problème.

    Là où le bas blesse, c'est quand je veux associer une requête à une liste déroulante dans un formulaire.

    "SELECT * FROM TOTO;" par exemple.

    Le problème est que si la table TOTO est dans une autre base, il faut bien que je passe par une table attachée.
    Et donc, j'ai la fenêtre ODBC qui s'ouvre pour demander le mot de passe la première fois.

    Je voudrais donc que cela soit transparent.

  4. #4
    Invité
    Invité(e)
    Par défaut
    Salut,

    Justement, je ne suis pas sûr, mais si tu mets ton mot de passe dans ta connection, cela devrait éviter ceci, mais je crois qu'il ne faut pas attaché tes tables, mais carrément te connecter à ta base.

    Test, mais je ne suis pas sûr de moi sur ce coup.

    Starec

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    581
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2004
    Messages : 581
    Points : 633
    Points
    633
    Par défaut
    j'ai le meme problème mais sous access - sql server.
    Mais moi j'avais essaie de faire toute mes requetes avec la string de connection au lieu de faire appel a CurrentDb ou CurrentProjet.
    Mais j'ai aussi le problème des requetes dans une combo ou d'appel de table dans une liste.

    Fix

  6. #6
    Membre habitué
    Inscrit en
    Juillet 2004
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 110
    Points : 137
    Points
    137
    Par défaut
    Je crois que les gens confondent deux choses :

    Pour ce qui est de lire un jeu d'enregistrement dans ma base Oracle dans mon code VBA par ADO DAO, je sais le faire et ça marche.

    Le problème est : il n'est pas question de parcourir un jeu d'enregistrement en interne en VBA, mais d'associer le contenu d'une table à une zone de liste modifiable.
    On doit utiliser la propriété RowSource du contrôle zone de liste modifiable. Ca ne prend comme valeur qu'une instruction SQL ou une table/requête.
    Donc si je veux lui donner "SELECT * FROM TOTO;" où TOTO est sur une base distante. Je suis bien obligé d'attacher la table TOTO à ma base.

    Et dans ce cas, j'ai la fenêtre ODBC qui s'ouvre la première fois pour me demander de saisir un mot de passe.

    J'ai trouvé une solution alternative, c'est de redéfinir au démarrage de l'application les tables liées en forçant le chaîne de connexion avec un mot de passe et login. Mais ça met une plombe à l'ouverture : pas admissible pour l'utilisateur !
    (Et obligé de faire à chaque démarrage de l'application, car au prochain démarrage, il change tout seul ma chaîne de connexion en virant mot de passe et login... bizarre !!)

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    581
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2004
    Messages : 581
    Points : 633
    Points
    633
    Par défaut
    ben si si c'est exactement le problème que j'ai, peux tu m'expliqué ce que tu as fait comme astuce ???

    Fix

  8. #8
    Membre habitué
    Inscrit en
    Juillet 2004
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Juillet 2004
    Messages : 110
    Points : 137
    Points
    137
    Par défaut
    Je n'ai pas d'astuces digne de ce nom en fait... suis toujours coincé

    MAIS au moment d'attacher les tables, tu peux cocher ENREGISTRER LE MOT DE PASSE. Et effectivement ça marche (mais il faut bien refaire les attaches pour toutes les tables utilisées, sinon tu auras droit à l'écran ODBC).

    Remarque : j'ai cru avoir une idée pour le problème d'associer une requête à une zone de liste modifiable ou autre contrôle du même acabit. C'était non pas de lier une requête à RowSource, mais de lier un Recordset (DAO dans mon test) à la propriété Recordset du contrôle.
    Le seul hic... Il me dit que le contrôle ne connait pas cette propriété.
    Dommage, car ça aurait été THE solution.
    Je n'ai pas essayé en ADO et non DAO, mais je pense que c'est pareil puisque c'est le contrôle directement qui n'admet pas cette propriété. Pourtant dans l'aide, on aurait cru le contraire.

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    581
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2004
    Messages : 581
    Points : 633
    Points
    633
    Par défaut
    et un pond ODBC via windows dans paramètre, panneau de config, outils d'admin et ODBC, tu as essaie ?
    La ou je travaille, une personne ayant commencé l'applic sur le sien n'a aucun prob, il a fait les ponds ODBC , moi quand j'etablis les ponds cela ne fonctionne pas, je ne sais pas pourquoi.
    Peut etre que pour toi cela pourrait aller.

    Fix

Discussions similaires

  1. Access 2003 : Arborecence dans table
    Par VITALTH dans le forum Modélisation
    Réponses: 1
    Dernier message: 06/11/2008, 13h48
  2. Access 2003-Oracle 8 ODBC
    Par gridin dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 29/11/2007, 16h29
  3. [Access 2003] IMPORT DE TABLES EN VBA
    Par texas2607 dans le forum VBA Access
    Réponses: 0
    Dernier message: 11/09/2007, 15h28
  4. [Access 2003]Mettre une table dans un formulaire?
    Par steeves5 dans le forum Access
    Réponses: 2
    Dernier message: 04/05/2006, 13h30
  5. Oracle 9i - Cryptage de mots de passe sous sql
    Par momo9237 dans le forum Oracle
    Réponses: 2
    Dernier message: 04/01/2006, 11h11

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