新建同义词

概述

同义词是数据库当前用户通过给另外一个用户的对象创建一个别名,可以通过对别名进行查询和操作,从而直接操作该数据库对象。

同义词类似于视图功能,支持对表进行增删改查。OceanBase 数据库对象如表、视图、函数、存储过程、序列、程序包、同义词等,数据库管理员均可以根据实际情况为其定义同义词。

同义词扩展了数据库的使用范围,能够在不同的数据库用户之间实现无缝交互。经常用于简化对象访问和提高对象访问的安全性。

同义词类型

同义词类型包括普通同义词和公用同义词。

  • 普通同义词:普通用户创建的同义词一般都是私有同义词,普通同义词只能当前用户可以访问,其他用户仅在授权后才可访问,当前用户具有创建同义词权限。

  • 公用同义词:一般由具有 DBA 角色(如:system)的用户创建,所有用户都可以访问。

具体请参考 OceanBase 数据库

新建同义词

如上图所示,创建同义词包含以下 8 个步骤:

1. 指定同义词名称

  1. 指定对象所有者

  2. 指定对象类型

  3. 指定对象名称

  4. 指定同义词类型

  5. 确定新建同义词

  6. 编辑同义词

  7. 完成新建同义词

本文档以在 ODC 中创建员工表同义词(syn_employee)为例,对 SYS 数据库中的 employee 表创建同义词 syn_employee。

说明

文中所使用的均为示例数据,您可根据实际情况对数据进行替换。

操作步骤

步骤一:指定同义词名称

在 OceanBase 开发者中心(OceanBase Developer Center,ODC)单击连接名进入连接后,在左导航栏中单击 同义词 标签可以查看同义词列表,同义词列表按类型分为普通同义词列表和公用同义词列表。在同义词列表的右上角,单击 + 创建同义词,或是在 ODC 上方导航栏中单击 新建 > 同义词 以创建所需对象。

新建同义词 中,指定同义词名称。

image.png

步骤二:指定对象所有者

指定所属 Schema。

步骤三:指定对象类型

指定对象类型:表或者视图。

步骤四:指定对象名称

指定所创建同义词对应的对象名称。

步骤五:指定同义词类型

指定同义词类型:普通同义词或者公用同义词。

步骤六:确定新建同义词

单击 下一步:确定 SQL,进入 SQL 创建确认页面。

步骤七:编辑同义词

image.png

在 SQL 创建确认页面,编辑同义词语句。

同时,在编辑页面的工具栏中提供了以下功能键:

功能

说明

格式化

单击该按钮对选中的 SQL 语句或当前 SQL 窗口中的所有 SQL 语句进行统一的格式化(缩进、换行和高亮关键字等操作)。

查找/替换

在查找框内输入内容以对脚本进行检索,查找后可在替换框内输入内容以对查找内容进行替换。

撤销

将脚本回退到上一步操作执行的结果。

重做

执行 撤销 操作后,对脚本重新执行撤销前的操作。

大小写

提供 全部大写全部小写首字母大写 三种效果,为脚本中选中的语句转换为对应形式。

缩进

提供 添加缩进删除缩进 两种效果,为脚本中选中的语句添加或删除包含的缩进。

注释

提供 添加注释删除注释 两种效果,将脚本中选中的语句转换为注释或转换为 SQL 语句。

IN 值转化

可以将如 A B 的格式转化为 ('A','B') 的格式。

在语句编辑页面中会根据在 新建同义词 弹窗中指定的信息生成对应的同义词定义语句,用户需要直接修改语句。

用户可以在 SQL 创建确认页面编辑创建的同义词语句。语法格式如下:

CREATE OR REPLACE SYNONYM syn_name FOR schema_name.object_name;

参数说明:

参数

说明

OR REPLACE

创建同义词时,如同义词存在则更新。

syn_name

同义词的名称。

普通同义词名称在某个 Schema 下必须是唯一的。

schema_name

指定对象所属的数据库 Schema。

object_name

指定对象名称。

步骤八:完成新建同义词

确认语句后,单击页面右上角的 创建 按钮,完成同义词的创建。同义词创建后不支持修改。

image.png

说明

在左侧导航栏中,右键鼠标单击类型列表中的类型名,通过弹出的管理操作列表(包括 查看新建删除下载刷新),可快速管理和操作目标对象。更多详情请参见 管理同义词常用功能简介

语法格式:

SELECT * FROM syn_name ([syn_parameter[,…])

示例:

SELECT * FROM syn_employee;

image.png

相关信息