本教程用示例来说明在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数据库之同义词(SYNONYM)使用相关推荐

  1. Oracle数据库之同义词(SYNONYM)使用(转)

    最近在公司听到同义词,不是很懂,甚是尴尬,决定看了一看 从网上看了看资料 同义词是指数据库对象(表.视图.序列.存储过程等数据库对象)用另一个名字来引用.比如: 建立一个同义词可以排除一个对象名字的限 ...

  2. oracle mysql 同义词,有关Oracle数据库中同义词的简单介绍

    Oracle数据库中有关同义词的一些知识是我们本文主要要介绍的内容,首先我们先看一个语句,如下: create synonym table_name for user.table_name; 其中** ...

  3. oracle vs. SQL 同义词synonym 别名 alias

    oracle 同义词 synonym 为数据库对象建立同义词后,当dba对数据库对象(table,view,序列)做了一个简单改动之后,如名字或者结构改变,则不需要重新更改并编译应用.在数据库字典中有 ...

  4. Oracle中的同义词synonym

    一.同义词概念      Oracle的同义词(synonyms)从字面上理解就是别名的意思,和视图的功能类似,就是一种映射关系.它可以节省大量的数据库空间,对不同用户的操作同一张表没有多少差别;它扩 ...

  5. Oracle 数据库中 同义词

    一.Oracle数据只有一个实例(简单理解就是Oracle 只能建立一个数据库,不像MySQL,它下面可以创建N个库),那么Oracle是根据用户灵活去管理的:这点读起来.理解      起来也不那么 ...

  6. Oracle 数据库中 同义词的意思

    一.Oracle数据只有一个实例(简单理解就是Oracle 只能建立一个数据库,不像MySQL,它下面可以创建N个库),那么Oracle是根据用户灵活去管理的:这点读起来.理解      起来也不那么 ...

  7. oracle数据库创建同义词

    好久没整理知识点了,抽空将零碎的知识点做个整合吧. 所谓同义词就是在管理员授予你可以对另一个数据库操作的权限的时候,你可以对另一个数据库的数据进行资源共享,而不必将另一个数据库中的数据copy到自己的 ...

  8. oracle mysql 同义词_Oracle数据库创建同义词(synonym)详细讲解

    1.1数据库创建同义词(synonym) Oracle的同义词(synonyms)从字面上理解就是别名的意思,和视图的功能类似,就是一种映射关系.它可以节省大量的数据库空间,对不同用户的操作同一张表没 ...

  9. oracle 表 实时同步,跨Oracle数据库实现表级别的实时同步

    Unsplash 一. 前言 这个问题是上一篇文章<Oracle跨数据库实现定时同步指定表中的数据>中所提问题的进一步延伸.考虑到对数据的实时性要求比较高,设置成定时同步,有点不妥,需要改 ...

最新文章

  1. 区块链兼容以太坊智能合约
  2. 好程序员分享做HTML5页面你要懂得这些
  3. swoole单台并发php,php swoole 并发多少?
  4. 【ABAP】如何判断单据是否被锁定
  5. PHP实现递归的三种方法
  6. 微信小程序点击按钮实现手机振动功能
  7. [转]解决Android studio升级到3.5的一些问题
  8. 知道经纬度坐标怎么计算两点间距离_【我的时间拣屎】亚里士多德:地球是圆的,我计算了地球的圆周...
  9. 1000道Python题库系列分享14(1道代码阅读题)
  10. [转]深一层看Singleton
  11. jmoiron sqlx mysql_mysql 一(或其他数据库)
  12. Unity常用工具类
  13. Spring Security(二) UserDetailsService 和 PasswordEncoder 密码解析器 详解
  14. 描述内存分配方式以及它们的区别?
  15. 你知道有哪些超级好用的网盘存储吗?
  16. Office 2210 能打钩的复选框
  17. [ML](回归和分类)
  18. 3DS Max 2014启动报错的解决方案
  19. 如何查看Linux系统的状态信息?
  20. java的markword_【转帖】Java工具结构与锁实现原理及MarkWord详解

热门文章

  1. 【Hive】Hive练习题(一)
  2. 视觉slam十四讲 pdf_《视觉SLAM十四讲》学习笔记+关键知识点汇总(一)
  3. 从浪潮之巅到千里之行,区块链能否实现赢家通吃?
  4. VINS-mono之IMU预积分(IMU预积分引出)
  5. VMware ESXi 8.0U1 集成网卡驱动和 NVMe 驱动 (网卡驱动集成版,整合版)
  6. html css齿轮滚动特效,纯CSS3实现的齿轮滚动动画
  7. windows下安装与使用pix2tex(mathpix免费替代版)
  8. SPSS 自动线性建模 模型导出方法
  9. 我的大学六年--郭天祥
  10. python打开pdf文档