码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 金仓数据库KingbaseES数据库管理员指南--15.3. 管理同义词


    目录

    15.3.1. 关于同义词

    15.3.2. 创建同义词

    15.3.3. 在DML语句中使用同义词

    15.3.4. 删除同义词


    您可以执行创建同义词、使用同义词和删除同义词等任务。

    • 关于同义词

    可以为表、视图、存储过程,序列等数据库对象建立同义词,也可以为同义词再次建立同义词,甚至可以为一个不存在的对象建立同义词。

    • 创建同义词

    使用CREATE SYNONYM语句创建同义词。

    • 在DML语句中使用同义词

    在DML语句中,同义词的使用方式和基对象的使用方式完全相同。

    • 删除同义词

    您可以通过DROP SYNONYM语句来删除一个不再需要的同义词。

    父主题: 管理视图、序列和同义词

    15.3.1. 关于同义词

    可以为表、视图、存储过程,序列等数据库对象建立同义词,也可以为同义词再次建立同义词,甚至可以为一个不存在的对象建立同义词。

    同义词本身并不包含原对象中的数据或者代码,它仅仅充当一个指针,是数据库对象的别名。此外,同义词易于使用,并能降低了数据库用户SQL语句的复杂性。同义词允许底层对象被重命名或移动,但必须重定义同义词,基于同义词的应用程序无需修改即可继续工作。您可以创建公共和私有的同义词。

    公共同义词由名为PUBLIC的特殊用户组拥有,一般由DBA创建,数据库中的每个用户都可以访问它。私有同义词包含在特定用户的模式中(非public模式),仅对该用户和底层对象的被授予者可用。同义词本身不涉及安全,当您赋予一个同义词对象权限时,您实质上是在给同义词的基对象赋予权限。

    父主题: 管理同义词

    15.3.2. 创建同义词

    使用CREATE SYNONYM语句创建同义词。

    创建同义词时,底层模式对象不需要存在,也不需要访问对象的权限,也能创建同义词。下面的语句在包含在schm模式中的tab1表上创建一个名为public_syn_tab1的公共同义词:

    CREATE PUBLIC SYNONYM public_syn_tab1 FOR schm.tab1;
    

    您也可以使用带有OR REPLACE子句的CREATE SYNONYM将一个现有同义词定义替换掉:

    CREATE OR REPLACE PUBLIC SYNONYM public_syn_tab1 FOR schm.tab1;
    

    在创建同义词应注意的是:

    • 同义词不能喝同一模式中其他同义词同名,但不同模式下可以有同名的同义词

    • 创建公有同义词不能指定模式

    • 创建私有同义词不能指定public模式

    • 创建私有同义词必须指定模式(在当前模式路径为public时)

    父主题: 管理同义词

    15.3.3. 在DML语句中使用同义词

    在DML语句中,同义词的使用方式和基对象的使用方式完全相同。

    只要您被赋予了基对象权限,您就可以使用其他用户的私有同义词。例如,您只拥有student表的SELECT权限,student表有一个同义词stu,这时,您就只能对stu同义词进行查询操作,而不能使用它进行插入数据。同理,如果拥有基对象的插入权限,则可以使用其同义词进行插入操作。

    例如,一个名称为student的同义词,下面语句是有效的:

    INSERT INTO stu VALUES (stu_sequence.CURRVAL, '刘恩斯',18,'高中二年级',4,'108@qq.com',SYSDATE);
    

    父主题: 管理同义词

    15.3.4. 删除同义词

    您可以通过DROP SYNONYM语句来删除一个不再需要的同义词。

    如果您要删除公共同义词,您必须拥有DROP PUBLIC SYNONYM系统权限。当删除私有同义词时,省略PUBLIC关键字;当删除公共同义词时,需要包含PUBLIC关键字。

    例如,下面语句删除名为syn_test的同义词:

    DROP SYNONYM syn_test;
    

    下面的语句删除名为public_syn的公共同义词:

    DROP PUBLIC SYNONYM public_syn;
    

    父主题: 管理同义词

  • 相关阅读:
    java笔试题易错总结
    京东联盟flutter插件使用方法
    BeanDefinition扫描注册过程
    定时任务管理器(xxl-job)
    【广州华锐视点】VR飞行员驾驶模拟实训系统
    高校教务系统登录页面JS分析——华南农业大学
    Python分享之特殊方法与多范式
    语句覆盖就是设计测试用例,运行测试程序,使得每一可执行语句至少执行一次。 判定覆盖:设计测试用例,使程序中的每个逻辑判定的取真和取假的分支至少经历一次。条件覆盖基本思想:设计用例,使每个判断中的每个
    MySQL高级SQL语句(下)
    EasyCVR通过国标GB协议接入设备,TCP正常注册但UDP无法成功注册的原因分析
  • 原文地址:https://blog.csdn.net/arthemis_14/article/details/125890574
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号