mysql触发器的例子,代码如下:

mysql> CREATE TABLE Employee( //创建表

-> id int,

-> first_name VARCHAR(15),

-> last_name VARCHAR(15),

-> start_date DATE,

-> end_date DATE,

-> salary FLOAT(8,2),

-> city VARCHAR(10),

-> description VARCHAR(15)

-> );

Query OK, 0 rows affected (0.02 sec)

mysql> insert into Employee(id,first_name, last_name, start_date, end_Date, salary, City, Description)

-> values (1,'Jason', 'Martin', '19960725', '20060725', 1234.56, 'Toronto', 'Programmer');

Query OK, 1 row affected (0.00 sec)

mysql>

mysql> insert into Employee(id,first_name, last_name, start_date, end_Date, salary, City, Description)

-> values(2,'Alison', 'Mathews', '19760321', '19860221', 6661.78, 'Vancouver','Tester');

Query OK, 1 row affected (0.00 sec)

mysql>

mysql> insert into Employee(id,first_name, last_name, start_date, end_Date, salary, City, Description)

-> values(3,'James', 'Smith', '19781212', '19900315', 6544.78, 'Vancouver','Tester');

Query OK, 1 row affected (0.02 sec)

mysql>

mysql> insert into Employee(id,first_name, last_name, start_date, end_Date, salary, City, Description)

-> values(4,'Celia', 'Rice', '19821024', '19990421', 2344.78, 'Vancouver','Manager');

Query OK, 1 row affected (0.00 sec)

mysql>

mysql> insert into Employee(id,first_name, last_name, start_date, end_Date, salary, City, Description)

-> values(5,'Robert', 'Black', '19840115', '19980808', 2334.78, 'Vancouver','Tester');

Query OK, 1 row affected (0.00 sec)

mysql>

mysql> insert into Employee(id,first_name, last_name, start_date, end_Date, salary, City, Description)

-> values(6,'Linda', 'Green', '19870730', '19960104', 4322.78,'New York', 'Tester');

Query OK, 1 row affected (0.00 sec)

mysql>

mysql> insert into Employee(id,first_name, last_name, start_date, end_Date, salary, City, Description)

-> values(7,'David', 'Larry', '19901231', '19980212', 7897.78,'New York', 'Manager');

Query OK, 1 row affected (0.00 sec)

mysql>

mysql> insert into Employee(id,first_name, last_name, start_date, end_Date, salary, City, Description)

-> values(8,'James', 'Cat', '19960917', '20020415', 1232.78,'Vancouver', 'Tester');

Query OK, 1 row affected (0.00 sec)

mysql>

mysql> select * from Employee;

+------+------------+-----------+------------+------------+---------+-----------+-------------+

| id | first_name | last_name | start_date | end_date | salary | city | description |

+------+------------+-----------+------------+------------+---------+-----------+-------------+

| 1 | Jason | Martin | 1996-07-25 | 2006-07-25 | 1234.56 | Toronto | Programmer |

| 2 | Alison | Mathews | 1976-03-21 | 1986-02-21 | 6661.78 | Vancouver | Tester |

| 3 | James | Smith | 1978-12-12 | 1990-03-15 | 6544.78 | Vancouver | Tester |

| 4 | Celia | Rice | 1982-10-24 | 1999-04-21 | 2344.78 | Vancouver | Manager |

| 5 | Robert | Black | 1984-01-15 | 1998-08-08 | 2334.78 | Vancouver | Tester |

| 6 | Linda | Green | 1987-07-30 | 1996-01-04 | 4322.78 | New York | Tester |

| 7 | David | Larry | 1990-12-31 | 1998-02-12 | 7897.78 | New York | Manager |

| 8 | James | Cat | 1996-09-17 | 2002-04-15 | 1232.78 | Vancouver | Tester |

+------+------------+-----------+------------+------------+---------+-----------+-------------+

8 rows in set (0.00 sec)

mysql> delimiter $$

mysql>

mysql> CREATE TRIGGER myTrigger //创建触发器

-> BEFORE UPDATE ON employee

-> FOR EACH ROW

-> BEGIN

->

-> UPDATE employee

-> SET salary=salary+(NEW.salary-OLD.salary)

-> WHERE id=NEW.id;

->

-> END$$

Query OK, 0 rows affected (0.00 sec)

mysql> delimiter ;

mysql>

mysql> update employee set salary = 1000;

ERROR 1442 (HY000): Can't update table 'employee' in stored function/trigger because it is already used by statement

which invoked this stored function/trigger.

mysql> drop trigger myTrigger; //删除触发器

Query OK, 0 rows affected (0.00 sec)

mysql> drop table Employee;

Query OK, 0 rows affected (0.00 sec)

mysql触发器更新自己表_mysql触发器实例:更新表数据之前触发相关推荐

  1. mysql触发器求属性和_MySQL触发器demo

    MySQL触发器示例 0写在之前: 最近在带浙大本科生的数据库系统的上机课,我手里拿到的教学文档非常的老,本人及不习惯老文档里的sql server的操作,就让大家安装的MySQL,这就有了个问题:M ...

  2. mysql从一张表更新另外一张表_MySQL 从一张表update字段到另外一张表中

    先来几个简单的示例 Solution 1: 1列 update student s, city c set s.city_name = c.name where s.city_code = c.cod ...

  3. mysql全局读写怎么锁_MySQL全局锁和表锁

    最近正好在看操作系统中关于线程,锁的部分,也可以学习一下数据库种的锁. MySQL的锁分为全局锁,表级锁,行锁三类. 全局锁 名思义,全局锁就是对整个数据库实例加锁.MySQL提供了一个加全局读锁的方 ...

  4. mysql 表字段信息从一张表迁移到另一张表_Mysql之分库分表

    互联网系统需要处理大量用户的请求.比如微信日活用户破10亿,海量的用户每天产生海量的数量:美团外卖,每天都是几千万的订单,那这些系统的用户表.订单表.交易流水表等是如何处理呢? 数据量只增不减,历史数 ...

  5. mysql查看比较大的数据表_mysql 如何查看哪些表数据量比较大

    数据库中有几十上百张表,那么哪些表的数据量比较大呢,总不能一个表一个表的去查询吧,在mysql中也有类似于oracle的数据字典表,只不过mysql没有oracle记录的那么多和详细,但也足够我们查询 ...

  6. mysql 分表_MySQL如何分库分表

    数据库分库分表估计很多伙伴都没有实践过,就是因为自己公司的业务不是很多,没有那么多数据.假如有一天项目的人数上来了,你写的系统支撑不住了,希望这篇文章带给你一丝丝的思路." 前言 在面试过程 ...

  7. mysql查询添加数据库表_MySQL数据库篇之表的增删改查

    主要内容: 一.表介绍 二.创建表 三.查看表结构 四.修改表结构 五.复制表 六.删除表 1️⃣ 表介绍 表相当于文件,表中的一条记录就相当于文件的一行内容,不同的是,表中的一条记录有对应的标题,称 ...

  8. mysql myisam表_mysql优化之MyISAM表锁

    概述 MyISAM存储引擎只支持表锁,mysql的表锁有两种模式:读锁和写锁. 他们的兼容关系是(对myisam的读操作,不会阻塞其他用户对同一表的读请求,但会阻塞对同一表的写操作*)和(对myisa ...

  9. mysql建立班级表_MySql 复习及学生表,课程表,班级表的创建

    学习笔记 ·数据库表的创建及查询 文章目录 学习笔记 任务过程 第一步:分析需求 第二步:新建数据库 第三步:新建表 1.Grade表 2.Student表 3.subject表 第三步:插入数据 1 ...

  10. 查看 mysql 占用的内存大小_mysql查看数据库和表的占用空间大小

    查看数据库的大小 use 数据库名 SELECT sum(DATA_LENGTH)+sum(INDEX_LENGTH) FROM information_schema.TABLES where TAB ...

最新文章

  1. mysql 相除 取整数位,psql除法保留小数,实现向上取整和向下取整操作_PostgreSQL_数据库...
  2. github emoji 表情列表
  3. [转] ArcEngine 产生专题图
  4. CodeForces 1491G Switch and Flip(结论)
  5. Together(AtCoder-3524)
  6. 微信oauth2接口获取用户的openid
  7. 18.mysql优化(三)–explain分析sql语句执行效率
  8. mendeley 笔记_免费文献管理器 Mendeley,其实比你想象的好用!
  9. 学点 C 语言(22): 数据类型 - 多维数组与指针
  10. 依图做语音了!识别精度创中文语音识别新高点
  11. python自动注册邮箱_python自动化办公——邮箱
  12. 重启linux系统后 启动mysql ERROR! The server quit without updating PID file /var/run/mysqld/mysqld.pid
  13. JS数据结构与算法-队列结构
  14. 腾讯企业邮箱功能比较
  15. 第 7 章 —— 代理模式
  16. 开源镜像站最新动态20150626
  17. urchin的安装及使用
  18. linux计算字符串md5值,计算字符串md5的几个方法
  19. 【BZOJ5498】[十二省联考2019]皮配(动态规划)
  20. 计算机跨考地信研究生,过来人解答关于跨考地信后续的几个复习问题

热门文章

  1. 代理工具及使用技巧Proxy Hunter
  2. delphi备份Oracle,Oracle数据库自动备份工具(Delphi源码)
  3. css3静态进度条,CSS3+JS实现静态圆形进度条
  4. linux锐捷代码_告诉你Ubuntu Linux锐捷安装方法及命令
  5. VS2012 有效注册密钥(截止到2016/9/27仍有效)
  6. 带你一步步破解Android微信聊天记录解决方案
  7. 为什么你的种子磁力下载很慢?
  8. 中国生物医药产业集群产业战略布局及运营管理模式分析报告2021-2027年
  9. Windows XP3安装internet 信息服务(IIS)时对策
  10. spss相关性分析_关公配赤兔——因子分析和SPSS