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

Administration Oracle Discussion :

grant any tables


Sujet :

Administration Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2007
    Messages
    121
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 121
    Par défaut grant any tables
    Bonjour à tous,

    je veux accorder le privilage select sur toutes les tables du schéma user1 au user2, c'est quoi la requête SVP

    Salutations.

  2. #2
    Membre éprouvé Avatar de kore62
    Profil pro
    Inscrit en
    Août 2007
    Messages
    222
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 222
    Par défaut
    une solution qui te permettra de faire ce que tu veux sans devoir te taper l'ecriture de chaque requete pour chaque table...
    Les tables sont dans le schema user1.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    set linesize 300
    set echo off
    set head off
     
    spool grantselectontableuser2.sql;
     
    select 'grant select on user1.'||object_name||' to user2;' 
    from all_objects (ou user_objects, dba_objects)
    where object_type='TABLE'
    and owner= 'USER1';
     
    spool off;
    Ensuite tu nettoies le fichier des lignes qui ne te servent pas...
    sachant que dans le spool tu peux configurer le tout pour n'avoir que le resultat du skull au dessus...

    Cf doc oracle.

    une autre astuce pour eviter de devoir acceder au table de user1 par
    "Select * from user1.table1" par exemple a partir de user2, tu crés des synonymes dessus
    meme mecanique que le skull au dessus

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    spool createsynonymeuser2.sql;
     
    select 'create synonym user2.'||object_name||' for user1.'||object_name||';' 
    from all_objects (ou user_objects, dba_objects)
    where object_type='TABLE'
    and owner= 'USER1';
     
    spool off;
    tu nettoies et tu executes le script généré
    Maintenant tu peux faire select * from table1 avec user2
    voila en esperant que ca peut taider il y a d'autres solutions.. en voila une qui aura le merite de t'aider...

Discussions similaires

  1. Grant DROP TABLE mais pas CREATE DATABASE..
    Par Rownlin dans le forum Administration
    Réponses: 0
    Dernier message: 29/02/2012, 18h03
  2. Grant sur toutes les tables en même temps
    Par jer64 dans le forum SQL
    Réponses: 3
    Dernier message: 25/09/2006, 07h59
  3. Grant sur plusieurs tables
    Par Bba_M dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 15/06/2006, 17h28
  4. [9i] priviléges create et drop any table
    Par Débéa dans le forum Oracle
    Réponses: 5
    Dernier message: 20/02/2006, 17h01

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