×

注意!页面内容来自https://www.developpez.net/forums/d135269/bases-donnees/oracle/synonymes/,本站不储存任何内容,为了更好的阅读体验进行在线解析,若有广告出现,请及时反馈。若您觉得侵犯了您的利益,请通知我们进行删除,然后访问 原网页

< type="text/css"> .body_wrapper { width: calc(100% - 214px) !important; } #ano_colonne_droite { position: absolute; right: 20px; top: 415px; width: 160px; display: none; } #ano_colonne_liens { background-color: #293a4e; border: 3px solid #293a4e; border-radius: .25rem .25rem 0 0; -webkit-border-radius: .25rem .25rem 0 0; padding-top: 20px; margin-bottom: 1rem; } #ano_colonne_contenu { background: #fff; } #ano_colonne_droite p { color: #5a7f97; text-align: center; padding: 4px 0.2rem; } #ano_colonne_droite p:first-child { padding-top:16px; } #ano_colonne_droite p:last-child { padding-bottom:16px; } #ano_colonne_titre { background: none !important; height: 21px; line-height: 21px; position: absolute; top: 0; left: 0; width: 160px; color: #fff !important; padding: 0 !important; margin: 0; text-align:center !important; font-size:.8rem; text-shadow: 1px 1px 0px #385263; }
Navigation

Inscrivez-vous gratuitement
pour pouvoir participersuivre les réponses en temps réelvoter pour les messagesposer vos propres questions et recevoir la newsletter

Oracle Discussion :

synonymes


Sujet :

Oracle

< type="text/css">.above_body { margin: -3px -.5rem .5rem; }
  1. #1
    Membre averti
    Inscrit en
    Avril 2006
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 11
    Par défaut synonymes
    bonjour,

    je voudrais s'il vous plait mieux connaitre l'utilité des synonymes

    merci

  2. #2
    Rédacteur

    Inscrit en
    Septembre 2004
    Messages
    626
    Détails du profil
    Informations forums :
    Inscription : Septembre 2004
    Messages : 626
    Par défaut
    Bonjour,


    Quand tu essaies d'accéder à un objet qui appartient à un autre schématu es obligé de préciser le nom de l'objet de la forme suivante : propriétaire.objet
    Dans ce casun synonyme est une sorte d'aliasil te suffit d'indiquer le nom de ton synonyme au lieu du nom de l'objet complètement qualifé.

    Tu as des synonymes qui sont privés (ie n'appartiennent qu'a ton compte Oracle) et d'autre qui sont publiques (ie visible par tout les comptes Oracle).

    Une autre utilisation possible est quand tu remplaces une table (TTOTO) par une vue (VTOTO)un synonyme TTOTO pointant vers VTOTO te permet d'éviter d'adapter ton code.


    Laly.
    In the heart of the truly greatsperfection is never achieved but endlessly pursued.

    Mon article sur les fonctions analytiques d'Oracle (calcul de moyennes mobilesde quartiles et bien d'autres...)

  3. #3
    Membre Expert
    Avatar de LeoAnderson
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 2 938
    Par défaut
    Pour faire une analogie avec le systèmeun synonymec'est exactement comme un "raccourci" sour Windows ou un lien symbolique sous Nux : c'est une autre façonen générale plus rapidede nommer un objet mais sans que cela ne donne de droits dessus.

  4. #4
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Par défaut
    un synonyme permet aussi de référencer une table dans une autre base

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    SQL> create or replace synonym scott.emp for scott.emp@db01.us.oracle.com;
     
    Synonym created.
    SQL> create or replace synonym scott.emp for scott.emp@db01.eu.oracle.com;
     
    Synonym created.

  5. #5
    Membre averti
    Inscrit en
    Avril 2006
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 11
    Par défaut synonymes
    alors je voudrais svp qu'on discute ce cas

    on a 3 schema différent qui ont des tables avec le meme nom (certaine tables) et cela suit aune mauvaise conception ou autre

    schema1(table1table2table3,........)
    schema2(table1table2table3,........)
    schema3(table1table2table3,........)

    on a eu besoin de creer des synonymes sachant qu'on peut pas toucher au code et que le nom du synonyme doit etre identique au nom de la table alors

    pour le schema1 on creer des synonymes publics pour les tables : table1table2table3

    par ce que pour le schema2 on peux pas faire la meme chose on a creer des synonymes privée pour chaque utilisateur "penible"

    mais qu'est ce qu'on va faire pour le schema3 si le deux schema (2 et 3) ont des utilisateur en commun

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : FranceBouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2006
    Messages : 133
    Par défaut
    Tu devrais expliciter un peu plus ton problème ...

    A vu de nez je pense qu'il vaut mieux passer par l'instruction :

    alter session set current_schema = nom_du_schema;


    En groslorsque ton user se connectetu lances :

    conn toto/toto@base

    alter session set current_schema=SCHEMA1;

    ==> vérification :
    select sys_context('userenv','current_schema') x from dual ;

    (si ce toto ne doit voir que les tables de schema1)

    Parallélement à cela pour que cela marche il faudra que ton user dispose de droit sur les tables de schema1 :
    grant selectinsertupdatedelete ....

Discussions similaires

  1. Réponses: 1
    Dernier message: 07/11/200509h11
  2. [Oracle 9i] Synonyme publique avec "owner dynamique&quo
    Par Worldofdada dans le forum Oracle
    Réponses: 11
    Dernier message: 03/11/200517h55
  3. équivalent des Synonymes Oracle sous SQL Server 2000
    Par wello00 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 25/07/200509h52
  4. Create Synonym : Privilege insufisant
    Par argoet dans le forum Administration
    Réponses: 6
    Dernier message: 21/09/200415h07
  5. PostgreSQL & les synonymes
    Par samyl dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 07/05/200417h32

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