一、创建事件触发器

1、ddl_command_start - 一个DDL开始执行前被触发;

2、ddl_command_end - 一个DLL 执行完成后被触发;

3、sql_drop -- 删除一个数据库对象前被触发;

create or replace function abort_any_command()

returns event_trigger

language plpgsql

as $$

begin

raise exception 'command % is disabled',tg_tag;

end;

$$;

create event trigger abort_ddl on DDL_command_start execute procedure abort_any_command();

二、语句级触发器

create or replace function log_student_trigger()

returns trigger as $$

begin

insert into log_student values(now(),user,tg_op);

return null;

end;

$$

language plpgsql;

create trigger log_student_trigger

after insert or delete or update on student

for statement execute procedure log_student_trigger;

--此触发器表示,如果对student表进行增、删、改之后将操作日志插入log_student_student表,如果将after替换成before则表示在操作进行之前出发数据插入操作。

注意:语句级的触发器应该总是返回null,并且必须显示地在触发器函数中写上“return null”,如果没写,将会报错。

三、修改事件触发器

1、禁用事件触发器 alter event trigger name disable;

2、启用事件触发器 alter event trigger name enable;

3、指定事件触发器所属 alter event trigger name owner to new owner;

4、重命名触发器 alter event trigger name rename to new_name;

postgresql 删除触发器_postgresql 触发器相关推荐

  1. postgresql删除索引_PostgreSQL 13 发布,索引和查找有重大改进

    9月24日,PostgreSQL全球开发组宣布PostgreSQL 13正式发布,作为世界上使用最多的开源数据库之一,PostgresSQL 13是目前的最新版本. PostgreSQL 13 在索引 ...

  2. oracle行级的触发器,Oracle触发器Trigger2行级

    create table trigger_t2( id int, name varchar(30), age int ); /* --创建一个before update的触发器-控制每一行,行级 -- ...

  3. mysql触发器新元组_MySQL触发器-条件触发器语法

    文章为作者原创,未经许可,禁止转载.    -Sun Yat-sen University 冯兴伟 实验4触发器 (1)实验目的 掌握数据库触发器的设计和使用方法 (2)实验内容和要求 定义BEFOR ...

  4. java oracle 触发器_Oracle 触发器

    一.触发器简介 触发器的定义就是说某个条件成立的时候,触发器里面所定义的语句就会被自动的执行.因此触发器不需要人为的去调用,也不能调用.然后,触发器的触发条件其实在你定义的时候就已经设定好了.这里面需 ...

  5. Oracle触发器3-DDL触发器

    DDL触发器,当执行DDL语句时会被触发.按照作用范围,分为schema triggers,database triggers.schema triggers作用在一个用户上,database tri ...

  6. Oracle触发器2-DML触发器

    DML触发器是最常见的触发器类型,开发人员用的比较多:而其他类型的触发器主要是用于数据库管理或者审计,DBA用的比较多. 1.DML触发器简介: BEFORE 触发器 这种触发器是在某个操作发生之前触 ...

  7. 触发器及触发器的作用

    触发器及触发器的作用 触发器是一种用来保障参照完整性的特殊的存储过程,它维护不同表中数据间关系的有关规则.当对指定的表进行某种特定操作(如:Insert,Delete或Update)时,触发器产生作用 ...

  8. 解析postgresql 删除重复数据案例

    这篇文章主要介绍了postgresql 删除重复数据案例详解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下 1.建表 /*Navicat Premium ...

  9. ORACLE查出表所有的触发器及触发器详细信息

    ORACLE查出表所有的触发器及触发器详细信息 一.查all_triggers表得到trigger_name Sql代码 select trigger_name from all_triggers w ...

最新文章

  1. Linux diff命令
  2. Btrfs入门(一)
  3. 【职场建议】开发转算法,我们应该如何准备(过来人的肺腑之言)
  4. 【数据库系统】大学模式
  5. r语言中的shiny教程_如何使用Shiny在R中编写Web应用程序
  6. Emulator 29.2.12 稳定版发布,启用 Google Maps UI
  7. nginx完全关闭log
  8. springboot-mybatis-多数据源
  9. VC++下使用ADO编写数据库程序(关键文章)
  10. 监控mysql连接池信息_druid-带监控功能的数据库连接池
  11. python爬虫项目报告需求分析_网络爬虫需求分析报告
  12. gliffy 绘图软件
  13. t分布 u分布 卡方分布_u分布(u分布和t分布)
  14. html查重报告转换,知网查重报告网页版如何转换成PDF和WORD?
  15. 广播地址为什么只能作为目的地址,不能作为源地址?
  16. R语言 第2章 数据对象与数据读写(2)
  17. 《今日求职》之拉勾网Android客户端产品说明
  18. ad19原理图标注_AD19如何让原理图的栅格显示更加清晰醒目
  19. 第1讲 几种密码技术的简要介绍——《图解密码技术》
  20. 凯恩帝1000对刀图解_凯恩帝数控机床对刀方法

热门文章

  1. MapReduce任务学习系列
  2. python基础学习(四)if判断语句
  3. java学习二---对象和内存管理
  4. 数据库事务必须具备的特性:ACID【转】
  5. php入职头一星期,入职一周就想离职,真的是我太飘了吗?
  6. signature=51b3a9ac95339489ef7384c6e21e303f,nginx – Let’s Encrypt的中间证书
  7. 天正坐标标注显示不全_广联达导入CAD图纸不显示怎么办?
  8. declare sql语句_SQL语句大全【第二部分】技巧+经典案例
  9. Python文件操作的几个要点与示例
  10. Python使用更相减损术计算两个整数的最大公约数