当前位置: 首页 > news >正文

做详情页网站百度云搜索引擎入口盘多多

做详情页网站,百度云搜索引擎入口盘多多,wordpress自动特色图,凡客网站做SEO能被收录吗触发器的分类: 语句级触发器:不管影响多少行,都只会执行一次 行级触发器:影响多少行,就触发多少次 一、语句触发器 1、当用户执行了 insert | update | delete 这些操作之后,可以触发一系列其他的动作 | …

触发器的分类:
语句级触发器:不管影响多少行,都只会执行一次
行级触发器:影响多少行,就触发多少次

一、语句触发器

1、当用户执行了 insert | update | delete 这些操作之后,可以触发一系列其他的动作 | 业务 trigerhandler

作用:
在动作执行之前或者之后,触发业务处理逻辑
插入数据,做一些校验

2、语法
create {or replace} trigger 触发器的名称 
before | after
insert | update | delete
on 表名
declare beginend;
3、插入员工之后,输出一句话
-- 新员工入职之后,输出一句话:欢迎加入我们
create or replace trigger tri_test1
after
insert
on emp
declare
begindbms_output.put_line('欢迎加入我们');
end;

向emp表上插入

insert into emp(empno,ename) values(9527,'XAIOHONG');

插入成功

select * from emp;

在这里插入图片描述
插入成功的同时并且输出了一句话
在这里插入图片描述

--数据校验,星期五老板不在,不能办理新员工入职
--在插入数据之前
--判断当前日期是否是周五
--如果是周五,就不能插入信息
create or replace trigger tri_test2
before 
insert 
on emp
declare -- 声明变量vday varchar2(10);
begin -- 查询当前日期  select trim(to_char(sysdate,'day')) into vday from dual; -- 判断当前日期if vday = 'friday' thendbms_output.put_line('老板不再,不能办理入职');--抛出系统异常raise_application_error(-20001,'老板不再,不能办理入职');end if;
end;

当插入信息的时候

insert into emp(empno,ename) values(9528,'XIAOHONG2');

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二、行级触发器

:old 代表旧的记录,更新前的记录
:new 代表的是新的记录

create {or replace} trigger 触发器的名称 
before | after
insert | update | delete
on 表名
[for each row]
declare 
begin
end;
1、更新所有员工的工资
--更新所有的工资 输出一句话
create or replace trigger tri_test3
after 
update
on emp
for each row
declare 
begindbms_output.put_line('更新了数据');
end;

在这里插入图片描述

update emp set sal = sal + 10;

在这里插入图片描述

2、判断员工涨工资后工资一定要大于涨工资前的工资
--判断员工涨工资后工资一定要大于涨工资前的工资
/*200 --> 100触发器:before旧的工资新的工资如果旧的工资大于新的工资,抛出异常,不让它执行成功
*/
create or replace trigger tri_updatesal 
before
update 
on emp
for each row 
declarebegin if :old.sal > :new.sal thenraise_application_error(-20002,'旧的工资不能大于新的工资');end if; 
end;

在这里插入图片描述

update emp set sal = 200 where empno = 7499;

在这里插入图片描述

增加数据

update emp set sal = sal + 10;

在这里插入图片描述

update emp set sal = sal - 10;

在这里插入图片描述

三、模拟mysql中ID自增长auto_increment

创建一张表

create table person(  pid number primary key,pname varchar2(20)
);

这里不能向MySQL应用直接插入id为空的值,实现不了自增长

insert into person values(null,'张三');

在这里插入图片描述
解决如上问题

使用触发器来解决上述问题

(1)创建序列:create sequence seq_person_pid;
(2)触发器
create or replace trigger tri_add_person_pid;
before
insert 
on person
for each row
declare begindbms_output.put_line(:new.pname);
end;

在这里插入图片描述
插入数据

insert into person values(null,'张三');

在这里插入图片描述

http://www.fp688.cn/news/144672.html

相关文章:

  • 一个网站的成本搜索引擎优化的流程
  • 山西省建设银行网站谷歌浏览器引擎入口
  • 网站做排名有用吗网站建设推广多少钱
  • 张家界市建设工程造价管理站网站做百度推广的网络公司广州
  • 网站建设验收报告模板谷歌推广代理商
  • 网站建设风险的特征最近大事件新闻
  • 网站建设需要什么知识搜索引擎有哪些好用
  • 做造价在那个网站比较好网络软文范文
  • 不让人看出wordpress建的站营销策略怎么写范文
  • 铁岭免费移动网站建设软广告经典例子
  • 做网站的优势重庆好的seo平台
  • 网站上在线订购怎么做seo竞争对手分析
  • 大港油田建设官方网站搜索引擎优化结果
  • 萍乡网站开发公司百度seo公司哪家最好
  • 有多少专门做兼职的网站百度快照在哪里
  • 有没有做那个的视频网站兰州模板网站seo价格
  • xp怎么做网站服务器seo排名技术软件
  • 网站吸引流量的方法品牌营销推广
  • 静态网站公用头部如何调用标题seo营销是什么
  • word如何做网站企业推广策划
  • 建设银行官网首页网站购纪念币最让顾客心动的促销活动
  • 影城网站建设百度官网网页版
  • 网站建设行业 知乎厦门百度开户
  • 单位网站制作费用报价单北京网站优化校学费
  • 天津市工程建设交易管理中心网站北京seo运营
  • 深圳网站制作比较好公司拉新推广赚钱的app
  • 宣传类的网站seo优化网站模板
  • 营销型企业网站建设方案书浙江网站推广运营
  • 做外贸网站需要什么卡怎么创建网页
  • 正规的网站建设企业网站制作狼雨seo网站