• SQL语句(9)--- 同义词


    1. 私有同义词:普通用户在自己模式下创建的同义词

           SQL> create synonym SYNONYMNAME for TABLE;

    私有同义词需要授权给其他用户,其他用户才可以查看,授权后,其他用户不仅可以访问同义词,也可以访问基表,反之亦然。

    2. 共有同义词:管理员创建,需要有 CREATE PUBLIC SYNONYM权限

              SQL> create public synonym SYNONYMNAME for TABLE;

    共有同义词需要授权给其他用户,其他用户才可以查看,授权后,其他用户不仅可以访问同义词,也可以访问基表,反之亦然。

    3. 如果存在私有同义词和共有同义词同名的情况,则优先访问私有同义词。

    SQL> conn sys/oracle@erp as sysdba
    Connected.

    SQL> create table temp as select empno,ename from scott.emp where deptno=10;

    Table created.

    SQL> create table temp1 as select empno,ename from scott.emp where deptno=20;

    Table created.

    SQL> create synonym a for temp;

    Synonym created.

    SQL> create public synonym a for temp1;

    Synonym created.

    SQL> select OWNER,SYNONYM_NAME,TABLE_NAME from dba_synonyms where SYNONYM_NAME='A' ;

    OWNER SYNONYM_NA TABLE_NAME
    ----------    ----------              ----------
    SCOTT     A                 EMP
    SYS          A                        TEMP
    PUBLIC    A                        TEMP1

    SQL> select * from a;

    EMPNO ENAME
    ---------- --------------------
    7782   CLARK
    7839   KING
    7934   MILLER

    SQL> select * from temp;

    EMPNO ENAME
    ---------- --------------------
    7782   CLARK
    7839   KING
    7934   MILLER

    SQL>

  • 相关阅读:
    类class解读
    函数重载
    for循环之省略{}
    《c++程序设计现代方法》笔记2
    【程序】c++雇员工资管理系统
    贪婪法
    乘法口诀程序
    百钱买百鸡问题程序
    【转】牛人十个月自学C++ 现在做C#开发工作
    c++基本规则习惯
  • 原文地址:https://www.cnblogs.com/eniniemand/p/14054646.html
Copyright © 2020-2023  润新知