TRIGGERS_监测系统_多表视图触发器—向原始数据报表中插入数据
Create Or Replace Trigger trg_view_report
Instead Of Insert or update or delete on view_for_report
for each row
Declare
begin
If Inserting Then
if :new.temperature1 <= 250 then
insert into originaldata_report
(id,
wid,
wname,
jurisdiction,
jurisdiction_name,
year,
month,
day,
temperature,
humidity)
values
(originaldata_report_id.nextval,
:new.wid,
:new.wname,
1,
'传感器一',
:new.year,
:new.month,
:new.day,
:new.temperature1,
:new.humidity1);
end if;
if :new.temperature2 <= 250 then
insert into originaldata_report
(id,
wid,
wname,
jurisdiction,
jurisdiction_name,
year,
month,
day,
temperature,
humidity)
values
(originaldata_report_id.nextval,
:new.wid,
:new.wname,
2,
'传感器二',
:new.year,
:new.month,
:new.day,
:new.temperature2,
:new.humidity2);
end if;
if :new.temperature3 <= 250 then
insert into originaldata_report
(id,
wid,
wname,
jurisdiction,
jurisdiction_name,
year,
month,
day,
temperature,
humidity)
values
(originaldata_report_id.nextval,
:new.wid,
:new.wname,
3,
'传感器三',
:new.year,
:new.month,
:new.day,
:new.temperature3,
:new.humidity3);
end if;
if :new.temperature4 <= 250 then
insert into originaldata_report
(id,
wid,
wname,
jurisdiction,
jurisdiction_name,
year,
month,
day,
temperature,
humidity)
values
(originaldata_report_id.nextval,
:new.wid,
:new.wname,
4,
'传感器四',
:new.year,
:new.month,
:new.day,
:new.temperature4,
:new.humidity4);
end if;
if :new.temperature5 <= 250 then
insert into originaldata_report
(id,
wid,
wname,
jurisdiction,
jurisdiction_name,
year,
month,
day,
temperature,
humidity)
values
(originaldata_report_id.nextval,
:new.wid,
:new.wname,
5,
'传感器五',
:new.year,
:new.month,
:new.day,
:new.temperature5,
:new.humidity5);
end if;
if :new.temperature6 <= 250 then
insert into originaldata_report
(id,
wid,
wname,
jurisdiction,
jurisdiction_name,
year,
month,
day,
temperature,
humidity)
values
(originaldata_report_id.nextval,
:new.wid,
:new.wname,
6,
'传感器六',
:new.year,
:new.month,
:new.day,
:new.temperature6,
:new.humidity6);
end if;
if :new.temperature7 <= 250 then
insert into originaldata_report
(id,
wid,
wname,
jurisdiction,
jurisdiction_name,
year,
month,
day,
temperature,
humidity)
values
(originaldata_report_id.nextval,
:new.wid,
:new.wname,
7,
'传感器七',
:new.year,
:new.month,
:new.day,
:new.temperature7,
:new.humidity7);
end if;
if :new.temperature8 <= 250 then
insert into originaldata_report
(id,
wid,
wname,
jurisdiction,
jurisdiction_name,
year,
month,
day,
temperature,
humidity)
values
(originaldata_report_id.nextval,
:new.wid,
:new.wname,
8,
'传感器八',
:new.year,
:new.month,
:new.day,
:new.temperature8,
:new.humidity8);
end if;
if :new.temperature9 <= 250 then
insert into originaldata_report
(id,
wid,
wname,
jurisdiction,
jurisdiction_name,
year,
month,
day,
temperature,
humidity)
values
(originaldata_report_id.nextval,
:new.wid,
:new.wname,
9,
'传感器九',
:new.year,
:new.month,
:new.day,
:new.temperature9,
:new.humidity9);
end if;
if :new.temperature10 <= 250 then
insert into originaldata_report
(id,
wid,
wname,
jurisdiction,
jurisdiction_name,
year,
month,
day,
temperature,
humidity)
values
(originaldata_report_id.nextval,
:new.wid,
:new.wname,
10,
'传感器十',
:new.year,
:new.month,
:new.day,
:new.temperature10,
:new.humidity10);
end if;
elsif Deleting then
Delete from originaldata_report t where t.wid = :Old.wid;
End if;
end ;
TRIGGERS_监测系统_多表视图触发器—向原始数据报表中插入数据的更多相关文章
- TRIGGERS_监测系统_原始数据表触发器—调用告警信息存储过程
//每次向originaldata表中插入数据就会触发该触发器 create or replace trigger originaldata_to_alarm after insert on ori ...
- 触发器修改后保存之前的数据 表中插入数据时ID自动增长
create or replace trigger t before update on test5 for each rowbegin insert into test55 values (:old ...
- 第18课-数据库开发及ado.net 连接数据库.增.删.改向表中插入数据并且返回自动编号.SQLDataReade读取数据
第18课-数据库开发及ado.net 连接数据库.增.删.改向表中插入数据并且返回自动编号.SQLDataReade读取数据 ADO.NET 为什么要学习? 我们要搭建一个平台(Web/Winform ...
- Hive通过查询语句向表中插入数据注意事项
最近在学习使用Hive(版本0.13.1)的过程中,发现了一些坑,它们或许是Hive提倡的比关系数据库更加自由的体现(同时引来一些问题),或许是一些bug.总而言之,这些都需要使用Hive的开发人员额 ...
- EF Core中,通过实体类向SQL Server数据库表中插入数据后,实体对象是如何得到数据库表中的默认值的
我们使用EF Core的实体类向SQL Server数据库表中插入数据后,如果数据库表中有自增列或默认值列,那么EF Core的实体对象也会返回插入到数据库表中的默认值. 下面我们通过例子来展示,EF ...
- (笔记)Mysql命令insert into:向表中插入数据(记录)
insert into命令用于向表中插入数据. insert into命令格式:insert into <表名> [(<字段名1>[,..<字段名n > ])] v ...
- Mysql命令insert into:向表中插入数据(记录)
insert into命令用于向表中插入数据. insert into命令格式:insert into <表名> [(<字段名1>[,..<字段名n > ])] v ...
- 初学者使用MySQL_Workbench 6.0CE创建数据库和表,以及在表中插入数据。
标签: mysqlworkbench数据库 2013-10-09 20:17 19225人阅读 评论(14) 收藏 举报 分类: mysql(1) 版权声明:本文为博主原创文章,未经博主允许不得转 ...
- Hive通过查询语句向表中插入数据过程中发现的坑
前言 近期在学习使用Hive(版本号0.13.1)的过程中,发现了一些坑,它们也许是Hive提倡的比关系数据库更加自由的体现(同一时候引来一些问题).也许是一些bug.总而言之,这些都须要使用Hive ...
随机推荐
- ecshop安全方面的一些参考建议
一,ecshop安装,其实很简单,只要一直下一步下一步点击即可,这样总是没有错的,因为官方不可能给我们一个有问题的程序,尽量从简即可. 请注意一下两点 A:在安装ecshop的时候,不要将所有文件都设 ...
- 使用ARM和VMSS创建自动扩展的web集群
在很多的商业场景中,用户的访问,峰值时间都是很难预测的,尤其是做一些市场推广活动和促销的时候,到底部署什么规模的web集群合适,这一直是个问题,部署过量会造成高成本和资源不必要的浪费,部署过少,如果到 ...
- html5画饼形图
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm10.aspx ...
- BZOJ 2298 problem a(区间DP)
题意:一次考试共有n个人参加,第i个人说:“有ai个人分数比我高,bi个人分数比我低.”问最少有几个人没有说真话(可能有相同的分数) 思路:考虑最多有多少人说真,那么答案就是n-max. ai个人分数 ...
- 在C中嵌入汇编
早前公布了C和汇编混编的温度控制器程序,收到一些朋友的询问,他们无法在自己程序中使用我的18B20的汇编子程序或无法正常通过混编后的程序编译. 其实在KEIL中嵌入汇编的方法很简单.如图一,在C文件中 ...
- Qt Creator快捷键大全,附快捷键配置方法
一.快捷键配置方法: 进入“工具->选项->环境->键盘”即可配置快捷键. 二.常用默认快捷键: 编号 快捷键 功能 1 Esc 切换到代码编辑状态 2 F1 查看帮助( ...
- smartassembly 使用指南
原文 http://www.cnblogs.com/hsapphire/archive/2010/09/21/1832758.html smartassembly 提供了一种用于优化和混淆你的 .ne ...
- 使用opencv传中文文件崩溃
这个问题经过我的调试发现: 程序是在 while (*at && !isdigit(*at)) at++; 这个语句时crash的,但是跟进去是isdigit的问题,因为变量a ...
- 2015第14周日WebSocket
清明时节雨纷纷,路上行人欲断魂,借问酒家何处是?牧童遥指杏花村.每次清明都不禁想起杜牧这首诗缅怀先人,此时第一句写时间天气,第二句写人物心情,第三句写解决方法,第四句给出解决方案,脍炙人口. 刚没事看 ...
- c#实现文件拖放
1. 选择form窗口,在事件分别双击双击DragDrop和DragEnter private void Form1_DragDrop(object sender, DragEventArgs e) ...