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

Oracle Discussion :

pbm de select avec monschema.matable


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 36
    Par défaut pbm de select avec monschema.matable
    Bonjour,

    Voici mon problème.
    J'ai créer un role MONROLE qui a le droit SELECT sur plusieurs tables du schéma MONSCHEMA. J'ai passé les commandes suivantes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    create role MONROLE;
    grant select on MONSCHEMA.MATABLE1 to MONROLE;
    grant select on MONSCHEMA.MATABLE2 to MONROLE;
    create user MONUSER ;
    GRANT connect to MONROLE;
    GRANT MONROLE TO MONUSER ;
    ALTER USER MONUSER DEFAULT ROLE MONROLE;
    Ensuite je me connecte par sqlplus avec MONUSER
    Je fait 2 type de select
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    A) select * from MONSCHEMA.MATABLE1 ;
    B) select * from MATABLE2;
    Pour le cas A, il me retourne le résultat, alors que pour le cas B j'ai
    ORA-00942 - table or view does not exist
    Je comprends pas pourquoi
    Je suis biensur dans la même base et MONSCHEMA est bien le propriétaire de mes 2 tables.

    La version d'oracle est 9.2.0.5
    Merci de m'aider

  2. #2
    Membre émérite Avatar de plabrevo
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    548
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 548
    Par défaut
    Peut-etre faudrait-il creer un synonyme (CREATE SYNONYM x FOR y.x) sur les deux tables pour que le schema proprietaire soit transparent pour l'application; ce n'est pas une pratique elegante de hard-coder les noms de schemas dans les applications.

  3. #3
    Expert confirmé
    Avatar de SheikYerbouti
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    6 760
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 6 760
    Par défaut
    Citation Envoyé par plabrevo
    ...ce n'est pas une pratique elegante de hard-coder les noms de schemas dans les applications.
    C'est le moins que l'on puisse dire !

  4. #4
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 414
    Par défaut
    effectivement c'est normal.

    Par defaut, select sans le nom du schema cherche dans les objets du user exécutant le select. donc il ne voit pas la table de MONSCHEMA...

    La solution élégante est effectivement le synonyme.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 36
    Par défaut
    Ca fonctionne merci

    Par contre j'ai créé un synonym "public" via la commande suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    create public synonym MATABLE for MONSCHEMA.MATABLE1
    Car MONUSER n'a que le droit de se connecter et de faire du select via le rôle
    Je ne veux pas lui mettre le droit de créer des synonyms.
    Je ne pense pas que ça change grand chose au niveau sécurité.
    Au moins si je dois créer un autre user, je n'aurai pas besoin de recréer un autre synonym

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. UNION de deux SELECT avec nombre d'arguments différents
    Par orus8 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 16/07/2004, 14h32
  2. Réponses: 6
    Dernier message: 08/06/2004, 14h51
  3. requete select avec AS remplacement de valeur
    Par pi3141563 dans le forum Requêtes
    Réponses: 3
    Dernier message: 17/04/2004, 22h15
  4. pb de select avec size avec choix multiple
    Par La_picolle dans le forum ASP
    Réponses: 10
    Dernier message: 28/08/2003, 15h21
  5. requete SELECT avec un nombre constant
    Par gurumeditation dans le forum Requêtes
    Réponses: 3
    Dernier message: 04/07/2003, 20h04

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