1.变量提示

NEW 是新值-- OLD 是旧值

INSERT 只有NEW ----UPDATE有NEW和OLD ---DELETE只有OLD

2.准备测试表(userinfo、userinfolog)

use test;

create table userinfo(userid int,username varchar(10),userbirthday date);

create table userinfolog(logtime datetime,loginfo varchar(100));

describe userinfo;

3.建立同时插入两张表的触发器beforeinsertuserinfo

# 定义触发器

delimiter $$

create trigger beforeinsertuserinfo

before insert on userinfo

for each row begin

insert into userinfolog values(now(),CONCAT(new.userid,new.username));

end;

$$

delimiter ;

show triggers;

4.建立插入数据存储过程spinsertuserinfo

# 存储过程定义

delimiter $$

create procedure spinsertuserinfo(puserid int,pusername varchar(10),puserbirthday date)

begin

insert into userinfo values(puserid,pusername,puserbirthday);

end;

$$

delimiter ;

show procedure status like 'spinsertuserinfo';

call spinsertuserinfo(1,'zhangsan',current_date);

select * from userinfo;

5.自定义函数fngetage

update userinfo

set userbirthday='2000.01.01'

where userid='1';

drop function if exists fngetage;

# 函数定义

delimiter $$

create function fngetage(pbirthday date)

returns integer

begin

return year(now()) - year(pbirthday);

end;

$$

delimiter ;

6.建立视图viewuserinfo调用函数fngetage

# 建立视图

create view viewuserinfo

as select * ,fngetage(userbirthday) as userage from userinfo;

select * from viewuserinfo;

清除日志记录

truncate table userinfolog;

delete from userinfolog;

mysql 触发器定义变量_MySQL 函数存储过程触发器定义简单示例相关推荐

  1. mysql cursor使用变量_mysql cursor游标的使用,实例

    mysql被oracle收购后,从mysql-5.5开始,将InnoDB作为默认存储引擎,是一次比较重大的突破.InnoDB作为支持事务的存储引擎,拥有相关的RDBMS特性:包括ACID事务支持,数据 ...

  2. ocaml快餐教程(2) - 定义变量与函数

    ocaml快餐教程(2) - 定义变量与函数 上一节我们主要介绍了ocaml的基本数据类型.在这些基本数据类型的基础上,我们可以组成更复杂的数据结构,比如我们用逗号分隔一些类型的值,就构成了元组. 比 ...

  3. mysql 生明变量_MySql中的变量定义

    根据mysql手册,mysql的变量分为两种:系统变量和用户变量.但是在实际使用中,还会遇到诸如局部变量.会话变量等概念.根据个人感觉,mysql变量大体可以分为四种类型: 一.局部变量. 局部变量一 ...

  4. mysql创建用户变量_MySQL创建一个变量的用户?

    您可以为此使用动态查询.首先为用户名设置变量名,为密码设置变量名.语法如下-SET @anyVariableName='yourUserName'; SET @anyVariableName1='yo ...

  5. mysql查询语句 变量_mysql查询语句中用户变量的使用

    先上代码吧 SELECT `notice`.`id` , `notice`.`fid` , `notice`.`has_read` , `notice`.`notice_time` , `notice ...

  6. python语言中函数在调用前必须先定义吗_Python函数必须先定义,后调用说明(函数调用函数例外)...

    java开发者在定义类中的方法时,不会关心方法的定义相对于调用语句的位置. 但是python中需要注意: 函数必须先定义.后调用(函数调用函数例外). 如下为示例说明: 1.python函数的应用一般 ...

  7. mysql分表存储_MySQL 分表存储的使用示例

    分表存储是把记录保存在不同的表表会一个关联了在这里我们来看一篇关于MySQL 分表存储的使用示例,具体的例子如下文介绍. 一般我们项目中如果数据量特别大的话通常会考虑将某一表数据进行分表处理,例如:我 ...

  8. Mysql事项,视图,函数,触发器命令

    事项开启和使用 //修改表的引擎 alter table a engine=myisam; //开启事务 begin; //关闭自动提交 set autocommit=0; //扣100 update ...

  9. mysql 触发器 库存管理_Mysql中的触发器(库存、用户订单中用到)

    什么是触发器? 触发器是数据库的一个程序,他是用来监听着数据表的某个行为,一旦数据表的这个行为发生了,马上执行相应的sql语句 触发器的语法结构: create trigger触发器的名称触发器事件o ...

最新文章

  1. 【国内首家】第一个基于语音生成实时知识图谱的系统来啦!!!
  2. mysql binaryVInstall
  3. vs visual studio 2015安装后的几个问题
  4. python 绘制时频图 plt.specgram
  5. JAVA入门级教学之(静态内部类)
  6. 2022十大科技趋势
  7. 漫步最优化二十二——收敛速率
  8. C#实现HttpUtility.UrlEncode输出大写字母
  9. Linux之date命
  10. vb mysql登录界面_VB\数据库--模拟系统登录界面
  11. cad标注样式快捷键_CAD快速入门(二十三):标注样式
  12. C语言函数:even(n),fflush(stdin)
  13. Essential Qt 第二十一章 本地目录
  14. 矩阵满秩分解原理解释
  15. Unity学习4:如何实现2D图像跟踪(涂色类AR项目实践1)
  16. Java 同步监视器中的 wait() 和 notify() 方法的具体实现
  17. Opencv C++图像处理(全)
  18. 十大人文科技类图书(转)
  19. 人教版数学课本插画暴露出的问题
  20. 剑指offer—丑数

热门文章

  1. Haproxy+Keepalived实现负载均衡
  2. zabbix通过JMX监控Tomcat及一些报错
  3. 一起谈.NET技术,.NET4.0 之 Dynamic VS Reflection 效率
  4. SQL Server之索引
  5. 对食材的敬畏之心极致产品_这些数据科学产品组合将给您带来敬畏和启发(2020年中的版本)
  6. 2027. 转换字符串的最少操作次数
  7. leetcode面试题 08.03. 魔术索引(二分)
  8. 如何使用Google Authenticator在ASP.NET Core中设置两因素身份验证
  9. 西格尔零点猜想_我从埃里克·西格尔学到的东西
  10. Docker 部署 postgresql 与 pgadmin4