触发器

Ubuntu16.04和Centos7 Yum部署zabbix3.4 结合钉钉智能报警

匿名 (未验证) 提交于 2019-12-03 00:43:02
Ubuntu16.04和Centos7.4两种操作系统部署zabbix3.4及zabbix功能介绍和各种小问题解决办法,分享最新,最潮流,最干的干活,解决最实在的问题,此博客也是本人在对zabbix懵懂时期各种摸索排坑到正式上线,最后到生产中检测200多台生产机,至今为止为出现任何误报警,不报警等情况 首先我们了解下zabbix监控的基础概念,以及工作原理和框架: 什么是zabbix: Zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案 agent端:主机通过安装agent方式采集数据。 server端:通过收集agent发送的数据,写入数据库(MySQL,ORACLE等),再通过php+apache在web前端展示. zabbix = cacti + nagios 优点和缺点: 优点:基于两款工具优点于一身并更强大,实现企业级分布式监控。 缺点:zabbix一个服务端只能有一个lamp支撑,所以DB的吞吐有限和单台server端服务器的处理能力有限,所以监控的主机有限,但是正常zabbix能满足我们的需求 监控功能: 主机的性能监控、网络设备性能监控、数据库性能监控、多种告警方式、详细的报表图表绘制

sql server 实现行级触发器方法

匿名 (未验证) 提交于 2019-12-03 00:26:01
sql server本身没有行级触发器,可用游标实现 create trigger delticket on ticket after delete as begin declare @Tno char ( 20 ) declare cur cursor local forward_only for select [ Tno ] from deleted open cur fetch next from cur into @Tno while @ @FETCH_STATUS = 0 begin update train set train . seatnum = train . seatnum - 1 from train where train . Tno = @Tno fetch next from cur into @Tno end close cur deallocate cur end 转载请标明出处: sql server 实现行级触发器方法 文章来源: sql server 实现行级触发器方法

sql server 实现行级触发器方法

匿名 (未验证) 提交于 2019-12-03 00:26:01
sql server本身没有行级触发器,可用游标实现 create trigger delticket on ticket after delete as begin declare @Tno char(20) declare cur cursor local forward_only for select [Tno] from deleted open cur fetch next from cur into @Tno while @@FETCH_STATUS=0 begin update train set train.seatnum=train.seatnum-1 from train where train.Tno=@Tno fetch next from cur into @Tno end close cur deallocate cur end 文章来源: sql server 实现行级触发器方法

salesforce 代码阶段

匿名 (未验证) 提交于 2019-12-03 00:22:01
APex Apex是salesforce开发的云上语言,语法类似于JAVA. MetaForce IDE 新建触发器,在新建触发器上,选择需要监听的对象。 trigger TestPosition on Position__c ( before update ) { //处理代码 } 参数可以为多个: (after insert,after update,after delete) ,甚至可以全部写上。 在触发器中,如果要执行操作 dom 的相关操作,一般会 调用自定义封装好的类。不会在触发器上直接写sql语句。或者出现操作dom的代码 Trigger的常用属性说明 变量名 说明 isInsert 插入事件,如果为插入,则为true isUpdate 更新,如果为更新,返回true isDelete 如果为删除,返回true isBefore 在之前操作 isAfter 在之后操作 isUndelete 撤销删除,返回true new 获取当前对象 newMap 获取当前对象,返回Map格式 old 返回修改之前的对象 oldMap 返回修改之前的对象,返回Map格式 size 获取影响记录大小 触发器的重要写法 确认对象。 确认好before after 确认好限制条件,需要精确到字段级别触发 Trigger与逻辑代码分开,通过trigger去调用逻辑代码类 在快速查找: 对象

查询代码在哪个视图、存储过程、函数、触发中使用过

匿名 (未验证) 提交于 2019-12-03 00:17:01
列名 数据类型 描述 name sysname 对象名。 id int 对象标识号。 xtype char(2) 对象类型。可以是下列对象类型中的一种: C = CHECK 约束 D = 默认值或 DEFAULT 约束 F = FOREIGN KEY 约束 L = 日志 FN = 标量函数 IF = 内嵌表函数 P = 存储过程 PK = PRIMARY KEY 约束(类型是 K ) RF = 复制筛选存储过程 S = 系统表 TF = 表函数 TR = 触发器 U = 用户表 UQ = UNIQUE 约束(类型是 K ) V = 视图 X = 扩展存储过程 uid smallint 所有者对象的用户 ID 。 info smallint 保留。仅限内部使用。 status int 保留。仅限内部使用。 base_schema_ ver int 保留。仅限内部使用。 replinfo int 保留。供复制使用。 parent_obj int 父对象的对象标识号(例如,对于触发器或约束,该标识号为表 ID )。 crdate datetime 对象的创建日期。 ftcatid smallint 为全文索引注册的所有用户表的全文目录标识符,对于没有注册的所有用户表则为 0 。 schema_ver int 版本号,该版本号在每次表的架构更改时都增加。 stats_schema_ ver

SqlServer触发器常用语法AFTER、INSTEAD OF及其详解

匿名 (未验证) 提交于 2019-12-03 00:11:01
先创建一个简单的触发器 CREATE TRIGGER trigger_name ON table_name [WITH ENCRYPTION] FOR | AFTER | INSTEAD OF [DELETE, INSERT, UPDATE] AS T-SQL语句 GO触发器位置:数据库>表>我这里是表名table_name>触发器解释:1、[WITH ENCRYPTION]:表示将该触发器加密,加密后触发器执行方法将无法被查看[DELETE, INSERT, UPDATE]对应为当执行删除、插入、更新三种动作时被触发 执行insert时,获取插入后的数据,可用select*from inserted读取执行delete时,获取删除前的数据,可用select*from deleted读取执行update时,获取更新前的数据,可用select*from deleted读取,获取更新后数据,可用select*from inserted读取 2、AFTER:操作成功后(这里是插入table_a后),执行触发器操作例如 CREATE TRIGGER T_AON table_aafter insertas begindeclare @id int,@name varchar(20)select @id=id,@name=name from insertedinsert into table

oracle通过触发器记录登陆主机ip

匿名 (未验证) 提交于 2019-12-03 00:11:01
日常运维中,在v$session中,只记录了登陆主机名称,但是没有主机IP,排查问题时很不方便,特别是开放视图给第三方的情况。 原理:利用触发器在v$session中增加client_info字段信息 create or replace trigger on_logon_trigger after logon on database begin dbms_application_info.set_client_info(sys_context( 'userenv', 'ip_address' ) ); end; 关闭PLSQL重新登陆,确认一下,大功告成。其他未显示的需要待释放连接重新连接后才会触发触发器记录IP。 来源:博客园 作者: 拜拜五花肉 链接:https://www.cnblogs.com/lynsen/p/11591835.html

angular 父子组件通信

匿名 (未验证) 提交于 2019-12-03 00:11:01
1. 子组件调用父组件的方法和数据 -- Input 装饰器 1. fatherComponent.html中   toChildStr -- 父组件中定义的数据   fatherMethod -- 父组件中的方法   fatherComponent -- 父组件本身, this指代父组件实例,通过 [fatherCompoent] 将父组件实例传递给子组件 <childComponent #login [toChildStr]= "toChildStr" [fatherMethod]= "fatherMethod" [fatherComponent]= "this" ></app-login> 2. childComponent.ts 中      通过 @Input 装饰器获取父组件属性,方法,父组件实例 export class LoginComponent implements OnInit { @ Input () toChildStr : string -- 父组件属性 @ Input () fatherMethod : any -- 父组件方法 @ Input () fatherComponent : any -- 父组件实例 constructor () { } ngOnInit () { } getFatherComponentMethod () { alert

postgresql 添加触发器

匿名 (未验证) 提交于 2019-12-02 23:57:01
添加触发器 -- 创建触发器函数 CREATE FUNCTION update_kpi_for_path_depth_trigger_fun() returns trigger as $$ begin DELETE from kpi_path; WITH RECURSIVE T (kpi_id, NAME, PARENT_ID, PATH, DEPTH,kpi_sql) AS ( SELECT kpi_id, NAME, PARENT_ID, ARRAY[kpi_id] AS PATH, 1 AS DEPTH,kpi_sql FROM kpi WHERE PARENT_ID = 0 UNION ALL SELECT D.kpi_id, D.NAME, D.PARENT_ID, T.PATH || D.kpi_id, T.DEPTH + 1 AS DEPTH,D.kpi_sql FROM kpi D JOIN T ON D.PARENT_ID = T.kpi_id ) INSERT INTO kpi_path(kpi_id,name,parent_id,path,depth,kpi_sql) SELECT kpi_id, NAME, PARENT_ID, PATH, DEPTH,kpi_sql FROM T ORDER BY PATH; UPDATE kpi set path =p