同义词的作用

2024-03-24 00:20
文章标签 作用 同义词

本文主要是介绍同义词的作用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

oracle从入门到总裁:​​​​​​https://blog.csdn.net/weixin_67859959/article/details/135209645

同义词

同义词本质上属于近义词的概念,它是表、索引、视图等模式对象的一个别名

通过为模式对象创建同义词,可以隐藏对象的实际名称和所有者信息,这样可以为对象提供一定的安全性保证

SELECT SYSDATE FROM dual ;

此时的程序就是查询日期时间,但是在之前说过 dual 属于一张临时表,那么这张临时表到底是属于谁的呢?

通过一系列的查询可以发现,dual 数据表是属于 sys 用户的。

既然 dual 属于 sys,那么按照之前的概念来说,不同的用户要进行表的互相访问,前面需要使用模式名,也就是说如果 scott 用户要使用 dual,则应该使用 sys.dual 才对。

而这个操作就属于同义词的定义范畴,也就是说 dual 是 sys.dual 的同义词。如果想创建同义词,可使用一下语法:

create [PUBLIC] SYNONYM 同义词名称 FOR 模式.表名称

其中 PUBLIC 表示创建的同义词是公用的,数据库中所有用户都可以使用

将 scott.emp 数据表映射为 semp,连接 sys 用户

CREATE SYNONYM semp FOR scott.emp ;

 同义词创建完成之后就可以直接利用同义词进行数据查询

SELECT * FROM semp ;

但是现在的问题是,此同义词无法被其他用户使用,它只能够被 sys 使用

如果想让一个同义词被所有用户使用,那么应该将其创建为公共同义词

切换回 sys 用户,重新创建同义词

CONN sys/change_on_install AS SYSDBA ;
DROP SYNONYM semp ;
CREATE PUBLIC SYNONYM semp FOR scott.emp ;

 上面代码中“DROP SYNONYM semp ”为删除同义词的语句。虽然同义词可以被其他用户访问了,但是对我们开发的意义不大

如果在当前模式中创建私有同义词,要求数据库用户必须具有 create synonym 的系统权限

如果要在其他模式中创建私有同义词,要求数据库用户必须具有 create any synonym注意的系统权限

这篇关于同义词的作用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/839985

相关文章

Java编译生成多个.class文件的原理和作用

《Java编译生成多个.class文件的原理和作用》作为一名经验丰富的开发者,在Java项目中执行编译后,可能会发现一个.java源文件有时会产生多个.class文件,从技术实现层面详细剖析这一现象... 目录一、内部类机制与.class文件生成成员内部类(常规内部类)局部内部类(方法内部类)匿名内部类二、

C++ 中的 if-constexpr语法和作用

《C++中的if-constexpr语法和作用》if-constexpr语法是C++17引入的新语法特性,也被称为常量if表达式或静态if(staticif),:本文主要介绍C++中的if-c... 目录1 if-constexpr 语法1.1 基本语法1.2 扩展说明1.2.1 条件表达式1.2.2 fa

css中的 vertical-align与line-height作用详解

《css中的vertical-align与line-height作用详解》:本文主要介绍了CSS中的`vertical-align`和`line-height`属性,包括它们的作用、适用元素、属性值、常见使用场景、常见问题及解决方案,详细内容请阅读本文,希望能对你有所帮助... 目录vertical-ali

浅析CSS 中z - index属性的作用及在什么情况下会失效

《浅析CSS中z-index属性的作用及在什么情况下会失效》z-index属性用于控制元素的堆叠顺序,值越大,元素越显示在上层,它需要元素具有定位属性(如relative、absolute、fi... 目录1. z-index 属性的作用2. z-index 失效的情况2.1 元素没有定位属性2.2 元素处

Spring 中 BeanFactoryPostProcessor 的作用和示例源码分析

《Spring中BeanFactoryPostProcessor的作用和示例源码分析》Spring的BeanFactoryPostProcessor是容器初始化的扩展接口,允许在Bean实例化前... 目录一、概览1. 核心定位2. 核心功能详解3. 关键特性二、Spring 内置的 BeanFactory

Spring组件初始化扩展点BeanPostProcessor的作用详解

《Spring组件初始化扩展点BeanPostProcessor的作用详解》本文通过实战案例和常见应用场景详细介绍了BeanPostProcessor的使用,并强调了其在Spring扩展中的重要性,感... 目录一、概述二、BeanPostProcessor的作用三、核心方法解析1、postProcessB

MyBatis的配置对象Configuration作用及说明

《MyBatis的配置对象Configuration作用及说明》MyBatis的Configuration对象是MyBatis的核心配置对象,它包含了MyBatis运行时所需的几乎所有配置信息,这个对... 目录MyBATis配置对象Configuration作用Configuration 对象的主要作用C

MySQL表锁、页面锁和行锁的作用及其优缺点对比分析

《MySQL表锁、页面锁和行锁的作用及其优缺点对比分析》MySQL中的表锁、页面锁和行锁各有特点,适用于不同的场景,表锁锁定整个表,适用于批量操作和MyISAM存储引擎,页面锁锁定数据页,适用于旧版本... 目录1. 表锁(Table Lock)2. 页面锁(Page Lock)3. 行锁(Row Lock

Android fill_parent、match_parent、wrap_content三者的作用及区别

这三个属性都是用来适应视图的水平或者垂直大小,以视图的内容或尺寸为基础的布局,比精确的指定视图的范围更加方便。 1、fill_parent 设置一个视图的布局为fill_parent将强制性的使视图扩展至它父元素的大小 2、match_parent 和fill_parent一样,从字面上的意思match_parent更贴切一些,于是从2.2开始,两个属性都可以使用,但2.3版本以后的建议使

maven发布项目到私服-snapshot快照库和release发布库的区别和作用及maven常用命令

maven发布项目到私服-snapshot快照库和release发布库的区别和作用及maven常用命令 在日常的工作中由于各种原因,会出现这样一种情况,某些项目并没有打包至mvnrepository。如果采用原始直接打包放到lib目录的方式进行处理,便对项目的管理带来一些不必要的麻烦。例如版本升级后需要重新打包并,替换原有jar包等等一些额外的工作量和麻烦。为了避免这些不必要的麻烦,通常我们