文章目录

  • 第三十九章 SQL命令 DROP TRIGGER
  • 大纲
    • 参数
  • 描述
    • FROM 子句
  • 示例

第三十九章 SQL命令 DROP TRIGGER

删除触发器

大纲

DROP TRIGGER name [ FROM table ]

参数

  • name - 要删除的触发器的名称。触发器名称可以是限定的,也可以是非限定的;如果限定,则其架构名称必须与表的架构名称匹配。
  • FROM table - 可选-要从中删除触发器的表。如果指定了FROM子句,则只在表中搜索命名触发器。如果未指定FROM子句,则在NAME中指定的整个架构中搜索命名触发器。

描述

DROP TRIGGER命令删除触发器。如果要修改现有触发器,则必须先调用DROP TRIGGER删除旧版本的触发器,然后再调用CREATE TRIGGER

注:DROP TABLE删除与该表关联的所有触发器。

DROP TRIGGER命令是特权操作。用户必须具有%DROP_TRIGGER管理权限才能执行DROP TRIGGER。否则将导致SQLCODE-99错误,因为%msg用户‘name’没有%DROP_TRIGGER权限。

用户必须对指定表拥有%ALTER特权。如果用户是表的所有者(创建者),则会自动授予该用户对该表的%ALTER权限。否则,必须授予用户对该表的%ALTER特权。否则将导致SQLCODE-99错误,因为%msg用户‘name’没有更改‘Schema.TableName’的表定义所需的%ALTER特权。

如果拥有适当的授予权限,则可以使用GRANT命令分配%DROP_TRIGGER%ALTER权限。

在嵌入式SQL中,您可以使用$SYSTEM.Security.Login()方法以具有适当权限的用户身份登录:

   DO $SYSTEM.Security.Login("_SYSTEM","SYS")&sql(      )

必须具有%Service_Login:Use权限才能调用$SYSTEM.Security.Login方法。

  • DROP TRIGGER不能用于从持久类投影的表,除非表类定义包括[DdlAllowed]。否则,操作将失败,并出现SQLCODE-300错误,同时未为类‘Schema.tablename’启用%msg DDL
  • DROP TRIGGER不能用于从部署的持久类投射的表。此操作失败,并出现SQLCODE-400错误,并显示%msg Unable to Execute DDL以修改已部署的类:‘classname’

DROP TRIGGER语句获取表的表级锁。这可以防止其他进程修改表的数据。此锁在放下触发器操作结束时自动释放。

FROM 子句

触发器及其表必须驻留在同一架构中。如果触发器名称未限定,则触发器架构名称默认为与表架构相同的架构,如FROM子句中所指定。如果触发器名称是非限定的,并且没有FROM子句,或者表名也是非限定的,则触发器模式缺省为缺省模式名称;不使用模式搜索路径。如果两个名称都是限定的,则触发器架构名称必须与表架构名称相同。模式名称不匹配会导致SQLCODE-366错误;只有当触发器名称和表名都是限定的,并且它们指定了不同的模式名称时才会出现这种情况。

在SQL中,对于特定表,触发器名称在其架构内必须是唯一的。因此,在一个模式中可以有多个同名触发器。可选的FROM子句用于确定要删除的触发器:

  • 如果未指定FROM子句,并且 IRIS在架构中找到与指定名称匹配的唯一触发器,则 IRIS将删除该触发器。
  • 如果指定了FROM子句,并且 IRIS在架构中找到了与指定名称和FROM表名都匹配的唯一触发器,则 IRIS将删除该触发器。
  • 如果未指定FROM子句,并且 IRIS找到多个与指定名称匹配的触发器,则 IRIS将发出SQLCODE-365错误。
  • 如果 IRIS找不到与指定名称匹配的触发器(对于FROM子句中指定的表),或者如果没有FROM子句,则对于架构中的任何表, IRIS都会发出SQLCODE-363错误。

示例

以下示例删除与系统范围默认架构中的任何表关联的名为TRIGGER_1的触发器。(初始默认架构为SQLUser):

DROP TRIGGER Trigger_1

以下示例删除与A架构中的任意表关联的名为TRIGGER_2的触发器。

DROP TRIGGER A.Trigger_2

以下示例删除与系统范围默认架构中的Patient表关联的名为TRIGGER_3的触发器。如果找到名为TRIGGER_3的触发器,但它与患者没有关联,则IRIS会发出SQLCODE-363错误。

DROP TRIGGER Trigger_3 FROM Patient

以下示例都删除了与Test模式中的Patient表关联的名为TRIGGER_4的触发器。

DROP TRIGGER Test.Trigger_4 FROM Patient
DROP TRIGGER Trigger_4 FROM Test.Patient
DROP TRIGGER Test.Trigger_4 FROM Test.Patient

第三十九章 SQL命令 DROP TRIGGER相关推荐

  1. 第二十九章 SQL命令 DISTINCT

    文章目录 第二十九章 SQL命令 DISTINCT 大纲 参数 描述 DISTINCT和ORDER BY DISTINCT和GROUP BY 字母大小写与DISTINCT优化 DISTINCT的其他用 ...

  2. 第二十二章 SQL命令 CREATE TRIGGER(二)

    文章目录 第二十二章 SQL命令 CREATE TRIGGER(二) SQL触发器代码 ObjectScript触发代码 字段引用和伪字段引用 引用流属性 引用SQLComputed属性 标签 方法调 ...

  3. 第十六章 SQL命令 CREATE TABLE(三)

    文章目录 第十六章 SQL命令 CREATE TABLE(三) 字段数据约束 NULL和NOT NULL UNIQUE DEFAULT DEFAULT Keywords ON UPDATE Colla ...

  4. 【正点原子FPGA连载】第三十九章OV7725摄像头RGB-LCD显示实验 -摘自【正点原子】新起点之FPGA开发指南_V2.1

    1)实验平台:正点原子新起点V2开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id=609758951113 2)全套实验源码+手册+视频下载地址:ht ...

  5. 第十四章 SQL命令 CREATE TABLE(一)

    文章目录 第十四章 SQL命令 CREATE TABLE(一) 大纲 参数 描述 语法概述 SQL安全和权限 表名 表存在 第十四章 SQL命令 CREATE TABLE(一) 创建表 大纲 CREA ...

  6. 第六十九章 SQL函数 JSON_OBJECT

    文章目录 第六十九章 SQL函数 JSON_OBJECT 大纲 参数 描述 选择模式和排序 ABSENT ON NULL 示例 第六十九章 SQL函数 JSON_OBJECT 将数据作为JSON对象返 ...

  7. 第三十五章 SQL函数 CURRENT_DATE

    文章目录 第三十五章 SQL函数 CURRENT_DATE 大纲 描述 示例 第三十五章 SQL函数 CURRENT_DATE 日期/时间函数,返回当前本地日期. 大纲 CURRENT_DATE 描述 ...

  8. 第三十六章 SQL函数 CURRENT_TIME

    文章目录 第三十六章 SQL函数 CURRENT_TIME 大纲 参数 描述 小数秒精度 示例 第三十六章 SQL函数 CURRENT_TIME 返回当前本地时间的日期/时间函数. 大纲 CURREN ...

  9. 小满Vue3第三十九章(Vue开发桌面程序Electron)

    建议视频教程小满Vue3(第三十九章 electron桌面程序)_哔哩哔哩_bilibili Electron官网Electron | Build cross-platform desktop app ...

最新文章

  1. SpringMVC学习二
  2. windows系统下node、npm的安装和卸载
  3. 浅谈C中的指针和数组(一)
  4. nodejs redis 发布订阅_SpringBoot整合Redis,怎么实现发布/订阅?
  5. SpringMVC源码解析
  6. repl java9_Java 9抢先体验:与JShell进行动手实践– Java REPL
  7. MySQL数据库面试题
  8. power bi 参数_参数化Power BI报表入门
  9. @程序员,这份 2 万人收藏的计算机科学速成课速码!
  10. 使用 ActiveReports 报表工具,动态创建报表模板
  11. 如何在微信里找到小程序?
  12. android 跑马灯带图片,Android自定义跑马灯效果(适合任意布局)
  13. 关于IE无法打开站点XX已终止操作问题
  14. 动手实现简易端口扫描器——PortScanner
  15. 机器视觉表面缺陷检测综述
  16. 一张图解读小米公司的商业模式
  17. 国开机考2020计算机应用基础,2020年武汉理工大学《计算机接口与通讯》作业与机考题库.docx...
  18. 百度云下载官方免费提速方案
  19. python3爬虫系列教学、案例、代码实战,看这几篇就够了
  20. 智能通断器Homekit

热门文章

  1. 数据“跑路”1.47亿次 浪潮政务云助“蜀道难”转向“全渝通办”
  2. linux刷windows phone,使用WoA-Installer工具在Lumia 950/XL上安装Windows 10 ARM
  3. 软件测试基础知识整理(适用于面试)
  4. Linux网卡绑定(bonding)配置
  5. 五边形数定理与拆分数
  6. python一个以回车结束的字符串_Python 学习总结——字符串
  7. Docker容器之间的通信
  8. iconfont使用svg
  9. 日记侠:天天写真的会进步?少了这一步可能力气白费
  10. USB EHCI知识点