人大金仓数据库KingbaseES触发器介绍

关键字:

KingbaseES、TRIGGER、人大金仓

什么是触发器?

触发器(TRIGGER)是一个命名的 PL/SQL 单元,它存储在数据库中并且可以重复调用,可以启用和禁用触发器,但不能显式调用它。当触发器被启用时,只要它的触发事件发生,数据库会自动调用触发器,当触发器被禁用时,则不会被触发。

触发器是在表、视图、模式或数据库上创建的,可以指定触发器被触发的时间点,确定触发器是在触发语句运行之前还是之后触发,以及是否针对触发语句影响的每一行触发,触发器创建完成后,默认是启用状态。

触发器的作用以及分类

触发器的分类:

  • 如果触发器是在表或视图上创建的,则触发事件由 DML 语句组成,触发器称为DML 触发器。
  • 如果触发器是在模式或数据库上创建的,那么触发事件由 DDL 或数据库操作语句组成,触发器称为系统触发器。

触发器的作用:

  • 自动生成虚拟列值
  • 记录事件
  • 收集有关表访问的统计信息
  • 在针对视图发出 DML 语句时修改表数
  • 将有关数据库事件、用户事件和 SQL 语句的信息发布到订阅应用程序
  • 防止在正常工作时间后对表进行 DML 操作
  • 防止无效交易
  • 强制执行无法使用约束定义的复杂业务或参照完整性规则

触发器的创建

使用CREATE TRIGGER关键字创建触发器:

CREATE TRIGGER <触发器名>

| BEFORE | AFTER| <触发事件> ON <表名>

FOR EACH | ROW| STARTMENT|

{WHEN <触发条件>}

<触发的事件>

  • 触发器名 – 可以包含模式,也可以不包含模式,同一个模式下触发器名必须是唯一的;并且触发器名和表名必须在同一个模式下。
  • 表名 – 表内数据发生变化时,激活在该表上的相应的触发器。
  • 触发事件 – 可以是INSERT、DELETE、UPDATE,也可以是几种事件的组合。
  • 触发器类型 – 行级触发器(for each row),语句级触发器(for each startment)
  • 触发条件 – 被激活时,触发器执行,在没有when的情况下触发器被触发动作激活后立即执行。
  • 触发的事件 – 可以是一个匿名块,也可以是对已创建的存储过程的调用。

触发器的简单实用

触发器使用条件谓词检测触发语句

示例:

  • 创建一个student表然后向里面插入一些数据。在该student表上创建触发器,当插入、更新、删除表中数据时都会触发触发器,打印相应动作下需要打印的内容。

  • 执行结果:

对表进行更新操作时:

对表进行插入操作时:

对表进行删除操作时:

INSTEAD OF 触发器

示例:

  • 建视图stu_info以显示有关学生的信息。视图本质上不是可更新的。该示例创建一个INSTEAD OF触发器来处理INSERT指向视图的语句。触发器将行插入到视图的基表student中。

  • 查询student表中是否有id为555的数据

查询结果显示不存在。

  • 然后使用insert语句向创建的视图中插入该数据:

结果打印了Inserting字符串,说明触发了上面在(1)中创建的触发器,

同时显示插入成功。

  • 再次查询student表中是否有id为555的数据:

结果显示有一条。

  • 说明该动作出发了上面创建的stu_info_insert触发器,从而将该行插入到视图的基表student中。

  • 13
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您可以通过以下步骤下载人大金仓数据库KingbaseES)的Windows安装程序: 1. 访问人大金仓官方网站或者相关下载网站。 2. 在网站上找到人大金仓数据库的下载页面。 3. 在下载页面上找到Windows版本的安装程序,并点击下载。 4. 下载完成后,双击安装程序进行安装。 请注意,具体的下载步骤可能因为网站的不同而有所差异。建议您在下载前先确认您所使用的网站的可信度,并确保下载的是官方或可信的安装程序。 引用\[1\]: 人大金仓数据库管理系统KingbaseES 是北京人大金仓信息技术股份有限公司自主研制开发的具有自主知识产权的通用关系型数据库管理系统。金仓数据库主要面向事务处理类应用,兼顾各类数据分析类应用,可用做管理信息系统、业务及生产系统、决策支持系统、多维数据分析、全文检索、地理信息系统、图片搜索等的承载数据库。\[1\] 引用\[2\]: 金仓数据库管理系统\[简称:KingbaseES\]是北京人大金仓信息技术股份有限公司(简称人大金仓)自主研发的、具有自主知识产权的商用关系型数据库管理系统(DBMS)。该产品面向事务处理类应用,兼顾各类数据分析类应用,可用做信息管理系统、业务及生产系统、决策支持系统、全文检索、地理信息系统等的承载数据库。\[2\] 引用\[3\]: 文章目录 1、KingbaseES是什么数据库2、KingbaseES数据库产品优势3、KingbaseES安装包下载地址4、KingbaseES数据库安装1、windows安装KingbaseES1、图形化界面安装2、命令行安装3、静默安装 2、Linux安装KingbaseES1、图形化安装2、命令行安装3、静默安装\[3\] #### 引用[.reference_title] - *1* [人大金仓数据库 Windows安装教程 -kingbase8R6](https://blog.csdn.net/qq_25094817/article/details/122807581)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [猿创征文 | 国产数据库人大金仓数据库详解安装和使用](https://blog.csdn.net/flq18210105507/article/details/127276704)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值