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 :

Faire un select sur 2 schémas


Sujet :

Oracle

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    138
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 138
    Points : 120
    Points
    120
    Par défaut Faire un select sur 2 schémas
    Bonjour,

    J'ai deux user chacun avec son schémas, disons USER1, et USER2.
    Je voudrais que le USER2 puisse consulter par select les tables de USER1.
    Pour l'instant, je n'ais trouver que cela :
    GRANT SELECT ON USER1.table1 TO USER2;
    à faire pour chaque table.
    Est-ce qu'il n'y aurais pas un moyen de donner les droits directement à toutes les tables, par exemple avec une commande du type :
    GRANT SELECT ON USER1.* TO USER2;

    Merci d'avance

  2. #2
    Membre régulier Avatar de Doracle
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Avril 2010
    Messages : 60
    Points : 74
    Points
    74
    Par défaut
    A ma connaissance tu ne peux pas, non.
    Sur Entreprise Manager quand tu choisis de donner un privilèges (droit) objet, tu dois spécifier, le schéma puis la table concernée.
    Sinon ta seule autre alternative est de passer par le privilège système appelé "SELECT ANY TABLE". Donc pour toutes les tables de la base (hors dictionnaire des données il me semble).

  3. #3
    En attente de confirmation mail
    Inscrit en
    Mars 2010
    Messages
    205
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 205
    Points : 230
    Points
    230
    Par défaut
    Non, il n'y a que les select any table, solution qui n'est pas recommandée pour des raisons de sécurité.

    Par contre, tu peux produire des grant quasi automatiquement en utilisant une requête de ce genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    select ' grant select on '||owner||'.'||table_name||' to USER2;' from all_tables
    where owner='USER1';

Discussions similaires

  1. Réponses: 2
    Dernier message: 07/04/2009, 10h00
  2. Faire un Select sur un champ GUID
    Par Ben_Le_Cool dans le forum Langage SQL
    Réponses: 6
    Dernier message: 12/11/2008, 17h39
  3. [Conception] faire un select sur un enregistrement durant une certaine période
    Par brazilia28 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 08/12/2006, 16h54
  4. Faire un SELECT sur 2 tables?
    Par outshined dans le forum Requêtes
    Réponses: 4
    Dernier message: 16/09/2006, 21h42
  5. Faire un select sur une quantité défini d'élément
    Par tripper.dim dans le forum Requêtes
    Réponses: 2
    Dernier message: 21/06/2005, 11h14

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