精华内容
下载资源
问答
  • Oracle数据库同义词

    2019-09-29 11:06:18
    同义词顾名思义,是数据库方案对象的一个别名。这里的数据库方案对象指表、视图、序列、存储过程、包等。 二、同义词的好处 1、不占内存空间,节省大量的数据库空间 2、简化了数据库对象的访问 3、提高了数据库...

    一、定义

    同义词顾名思义,是数据库方案对象的一个别名。这里的数据库方案对象指表、视图、序列、存储过程、包等。

    二、同义词的好处

    1、不占内存空间,节省大量的数据库空间

    2、简化了数据库对象的访问

    3、提高了数据库对象访问的安全性

    4、扩展的数据库的使用范围,能够在不同的数据库用户之间实现无缝交互;同义词可以创建在不同一个数据库服务器上,通过网络实现连接

    三、创建同义词语法

    create public synonym table_a for  user.table_a;
    

    四、同义词的删除语法

    因为同义词也是对象 ,删除语法统表一样

    drop public synonym table_a;

    五、扩展

    如果要访问不同数据库下或者不同用户下的表table_a,当然也可以使用同义词,但需要先创建一个Database Link(数据库连接)来扩展访问,然后在使用如下语句创建数据库同义词:

    create synonym table_a for table_a @DB_Link;

    参考资料:
    https://www.cnblogs.com/wushuang0608/p/8405281.html#top

    转载于:https://www.cnblogs.com/jycjy/p/11268346.html

    展开全文
  • 当我们使用Oracle数据库用户user1的时候, 我们想要访问只有在用户user2里才有的表t_emp,我们通常的语句是:select t.ename, t.deptno from user2.t_emp t;如果我们直接写:select t.ename, t.deptno from t_emp t;这...

    当我们使用Oracle数据库用户user1的时候, 我们想要访问只有在用户user2里才有的表t_emp,

    我们通常的语句是:

    select t.ename, t.deptno from user2.t_emp t;

    如果我们直接写:

    select t.ename, t.deptno from t_emp t;

    这时候就会报错: 表或视图不存在!

    那我们可不可以直接写这样的语句呢?

    答案是可以的. 利用同义词就可以做到这一点.

    同义词的好处就是可以利用一个名词(可以理解为某个对象的代号)来访问某个特定的数据库对象

    那首先我们先要创建同义词.

    create public synonym table_name for user.table_name;

    create public synonym t_emp form user2.t_emp;

    然后你在使用

    select t.ename, t.deptno from t_emp t;

    查询就能得到你想要的结果了.

    删除同义词:

    drop public synonym table_name;

    查看同义词:

    select * from dba_synonyms

    展开全文
  • Oracle数据库同义词创建

    千次阅读 2019-05-07 11:02:04
    Oracle数据库是以用户来区分的,之前在开发一个项目时,调用了另一个项目的电子签章资源,问题是,该电子签章的表是在另一个用户下面,经过搜索找到处理方法,而我的处理方法是创建一个oracle的同义词来处理, ...

            Oracle数据库是以用户来区分的,之前在开发一个项目时,调用了另一个项目的电子签章资源,问题是,该电子签章的表是在另一个用户下面,经过搜索找到处理方法,而我的处理方法是创建一个oracle的同义词来处理,

           本例:在vincent用户下面可以访问到scott的emp表

          1.用管理员账户创建用户vincent:

    SQL> conn /as sysdba
    Connected to Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 
    Connected as system@ORCL
    
    SQL> create user vincent identified by root;
    User created
    
    SQL> grant create session,connect,resource to vincent;
    Grant succeeded

              2.用管理员账户给当前账户【vincent】赋予CREATE SYNONYM的权限

    SQL> grant create synonym to vincent;
    Grant succeeded

           3.在scott用户下,执行以下操作:【给vincent用户赋值查询emp表的权限】

    SQL> grant select on emp to vincent;
    Grant succeeded

           4.在vincent用户下创建同义词:

    SQL> create or replace synonym emp2 for scott.emp;

    此时,在vincent用户下,通过select * from emp2就可以查询scott用户的emp数据

    展开全文
  • 本教程用示例来说明在Oracle数据中如何创建和删除同义词(SYNONYM)。概念同义词是指数据库对象(表、视图、序列、存储过程等数据库对象)用另一个名字来引用。比如:建立一个同义词可以排除一个对象名字的限制.如果你的...

    本教程用示例来说明在Oracle数据中如何创建和删除同义词(SYNONYM)。

    概念

    同义词是指数据库对象(表、视图、序列、存储过程等数据库对象)用另一个名字来引用。比如:

    建立一个同义词可以排除一个对象名字的限制.

    如果你的数据库有多个用户,USER_A要访问USER_B的TABLE1,只能使用USER_B.TABLE1

    建一个同义词abc指向USER_B.TABLE1,那你就可以select * from abc了,而且public的同义词会直接出现在所有用户的面前,开发不就方便多了

    创建同义词

    语法:

    CREATE [OR REPLACE] [PUBLIC] SYNONYM [schema.] synonym_name FOR [schema.] object_name [@dblink];

    语法说明:

    OR REPLACE: 在不使用DROP的前提下容许你重新创建(如果同义词已经存在)。

    PUBLIC: 所创建的同义词是全局的同义词,所有数据库用户都可以使用。

    schema: 要创建同义词的对象所在的schema,如果省略,则默认的应用对象在当前schema下。

    object_name: 要创建同义词的对象,它可以是以下几种类型:

    TABLE

    VIEW

    SEQUENCE

    STORED PROCEDURE

    FUNCTION

    PACKAGE

    MATERIALIZED VIEW

    JAVA CLASS SCHEMA OBJECT

    USER-DEFINED OBJECT

    SYNONYM

    示例:

    CREATE PUBLIC SYNONYM suppliers FOR app.suppliers;示例中创建的同义词名为suppliers,这样,其他schema下的用户可以使用该同义词来使用app下的suppliers表而不必加上app。例如:

    SELECT *

    FROM suppliers;

    删除同义词

    语法

    DROP [PUBLIC] SYNONYM [schema.] synonym_name [FORCE];

    说明:

    PUBLIC: 容许删除PUBLIC同义词, 如果使用了PUBLIC关键字,则可以省略schema。

    FORCE:用来强制删除同义词,即使它在数据库中有其它的依赖。

    示例:

    DROP PUBLIC SYNONYM suppliers;

    展开全文
  • Oracle数据库同义词详解

    千次阅读 2018-02-07 10:29:58
    同义词顾名思义,是数据库方案对象的一个别名。这里的数据库方案对象指表、视图、序列、存储过程、包等。 二、同义词的好处 1、不占内存空间,节省大量的数据库空间 2、简化了数据库对象的访问 3、提高了...
  • 同义词顾名思义,是数据库方案对象的一个别名。这里的数据库方案对象指表、视图、序列、存储过程、包等。 二、同义词的好处 1、不占内存空间,节省大量的数据库空间 2、简化了数据库对象的访问 3、提高了数据库...
  • Oracle创建数据库同义词1.在A用户下授权“商户信息表”给B用户grant all on TBL_INF_MCHNT_INF to B;commit;2.在B用户下建立同义词create synonym TBL_INF_MCHNT_INF for A.TBL_INF_MCHNT_INF;3. 查询数据库所有同义...
  • Oracle数据库同义词(SYNONYM)使用

    万次阅读 2014-12-31 21:18:39
    实例讲解Oracle数据库同义词的创建、删除
  • Oracle数据库同义词

    千次阅读 2017-10-31 14:36:14
    数据库的同义词数据库同义词的意思就是我创建一个同义词之后,我再本数据库中查询这个同义词的表,他会连接到另外一个数据库中的表上。相当于一个映射关系。首先建立连接create public database link 目标数据库名 ...
  • Oracle数据库同义词、试图和序列
  • Oracle创建数据库同义词

    千次阅读 2010-01-08 12:48:00
    1.在A用户下授权“商户信息表”给B用户grant all on TBL_INF_MCHNT_INF to B;commit;2.在B用户下建立同义词create synonym TBL_INF_MCHNT_INF for A.TBL_INF_...3. 查询数据库所有同义词select * from sys.synonyms
  • 同义词:为了使有关分布式操作更透明,ORACLE数据库里有同义词的对象synonym。顾名思义就是一个对象的同义词,可以用它来代替对象。 数据库链路的建立语法一般是:CREATE DATABASE LINK [db_link_name] CONNECT TO ...
  • oracle数据库创建同义词

    千次阅读 2018-12-13 15:23:55
     所谓同义词就是在管理员授予你可以对另一个数据库操作的权限的时候,你可以对另一个数据库的数据进行资源共享,而不必将另一个数据库中的数据copy到自己的数据库中,这样会造成资源浪费。 1.首先确定本用户是否...
  • Oracle 数据库同义词

    千次阅读 2019-02-26 15:01:13
    一、Oracle数据只有一个实例(简单理解就是Oracle 只能建立一个数据库,不像MySQL,它下面可以创建N个库),那么Oracle是根据用户灵活去管理的;这点读起来、理解   起来也不那么难,但是除非自己亲自实现一把才...
  • 同义词是一个计算机术语,英文(synonym)是指向其它数据库表的数据库指针。同义词有私有(private)和公共(public)两种类型。 同义词有两种类型:私有(private)和公共(public)。私有的同义词是在指定的模式...
  • 同义词就是为数据库对象定义的别名,主要目的就是监护对象的访问和提高数据库的安全性。 在使用同义词时,数据库将他转化成对应的对象名字。 同义词与视图类似,他不占用实际存储空间,只是在数据字典中保存了定义...
  • Oracle数据库中有关同义词的一些知识是我们本文主要要介绍的内容,首先我们先看一个语句,如下:  create synonym table_name for user.table_name;  其中第一个user_table和第二个user_table可以不一样。  ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 18,263
精华内容 7,305
关键字:

oracle数据库同义词