同义词
同义词(synonym)是为模式对象起的别名,可以为表,视图,序列,过称,函数,和包等数据库模式对象创建同义词。同义词有两种:公有同义词和私有同义词。公有同义词对所有用户都可以用。创建公有同义词必须拥有系统权限CREATE PUBLIE SYNONYM;创建私有同义词需要create synonym。私有同义词只对拥有同义词的账号有效,但私有同义词也可以通过授权,使其对其他用户有效。同义词通过给本地或远程对象分配一个通用或简单的名称,隐藏了对象的拥有者和对象的真实名称,也简化了SQL语句。
如果同义词名称重名,识别顺序怎样呢,如果存在对象名,则优先识别,起床识别私有同义词,最后识别公有同义词。
同义词的创建和使用
create [public] synonym 同义词名
for [模式名.]对象名[@数据库链名];
其中:public代表公有同义词,若省略则创建私有同义词。模式名代表拥有对象的模式账号名,不加就代表当前用户。
删除同义词的语法
drop synonym 同义词名;
删除同义词的认必须是同义词的拥有者或有drop any synonym权限的人,删除同义词不会删除对应的对象。
同义词的查看
通过查询数据字典USER_OBJECTS和USER_SYNONYMS,可以查看同义词信息。
系统定义的同义词对象
同义词 | 对象名称 | 作用 |
---|---|---|
DICT | DICTIONARY | 数据字典 |
cat | user_catalog | 用户拥有的表,视图,同义词和序列 |
clu | user_clusters | 用户拥有的聚簇 |
ind | user_indexes | 用户拥有的索引 |
obj | user_objects | 用户拥有的对象 |
seq | user_sequences | 用户拥有的序列 |
syn | user_synonym | 用户拥有的同义词 |
cols | user_tab_columns | 用户拥有的表,视图和聚簇的列 |
tabs | user_tables | 用户拥有的表 |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!