必威体育Betway必威体育官网
当前位置:首页 > IT技术

mysql触发器

时间:2019-11-01 21:14:30来源:IT技术作者:seo实验室小编阅读:87次「手机版」
 

mysql触发器

-- 见表语句

SET FOREIGN_KEY_CHECKS=0;

DROP TABLE IF exists `zj_cus_column`;

CREATE TABLE `zj_cus_column` (

`id` int(10) unsigned NOT NULL AUTO_INCREMENT comment '自增主键',

`cu_id` int(11) DEFAULT NULL COMMENT '客户id',

`table_name` varchar(32) DEFAULT NULL COMMENT '表名',

`col_name` varchar(32) DEFAULT NULL COMMENT '列名',

`isdelete` tinyint(4) DEFAULT '0' COMMENT '是否删除',

`field_id` int(11) DEFAULT NULL COMMENT '字段id',

PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=23 DEFAULT CHARSET=utf8 COMMENT='自定义列';

SET FOREIGN_KEY_CHECKS=0;

DROP TABLE IF EXISTS `zj_field_status`;

CREATE TABLE `zj_field_status` (

`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增主键',

`name` varchar(32) DEFAULT NULL COMMENT '字段名称',

`status` tinyint(4) DEFAULT '0' COMMENT '状态',

`type` tinyint(4) DEFAULT '0' COMMENT '字段类型',

`table_name` varchar(32) DEFAULT NULL COMMENT '表名',

`content` varchar(128) DEFAULT NULL COMMENT '字段内容',

`update_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间',

`is_delete` tinyint(4) DEFAULT '0' COMMENT '是否删除',

`cu_id` int(11) DEFAULT NULL COMMENT '客户id',

`is_update` tinyint(4) DEFAULT '0' COMMENT '是否为更新',

PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=30 DEFAULT CHARSET=utf8 COMMENT='状态表';

-- 插入数据

INSERT INTO `zj_cus_column` VALUES ('11', '2', '0', '123', '0', '0');

INSERT INTO `zj_field_status` VALUES ('16', '测试数据11', '0', '1', null, '内容', '2019-05-17 15:36:58', '0', '2', null);

-- 新增字段触发器

CREATE TRIGGER add_field AFTER INSERT ON `zj_field_status`  FOR EACH ROW 

BEGIN

INSERT INTO `zj_cus_column` (`cu_id`, `table_name`, `col_name`, `field_id`) VALUES (new.cu_id, new.table_name, new.name,new.id);

END

-- 修改字段触发器

CREATE TRIGGER update_field AFTER update ON `zj_field_status`  FOR EACH ROW 

BEGIN

UPDATE `zj_cus_column` SET `cu_id`=new.cu_id, `table_name`= new.table_name, `col_name`= new.name  WHERE (`field_id`=new.id);

END

-- 删除字段触发器

CREATE TRIGGER delete_field BEFORE delete ON `zj_field_status`  FOR EACH ROW 

BEGIN

DELETE FROM `zj_cus_column` WHERE (`field_id`= old.id);

END

-- 查询触发器

show triggers;

-- 删除触发器

drop    trigger  addfield;

new 获取插入后的值

old  获取将要执行语句的值

文章最后发布于: 2019-05-22 17:25:16

相关阅读

MySql分页实现

分页sql格式是:select * from table limit (start-1)*limit,limit; 其中start是页码,limit是每页显示的条数。分页需求:客户端通过传

mysql示例employees数据库

供练习sql使用。MySQL同样提供了employees数据库,但并未随数据库一起安装,其下载链接也极其隐蔽,可能导致许多人没注意到。 下载地

五大开源MySQL管理工具!

对于数据库管理员(DBA)来说,保持数据库运行在最佳状态需要具备敏捷,专注,快速反应的能力以及一颗冷静的头脑。数据库几乎是所有应用

wxpython+MySQL实现学生信息管理系统

初学者,仅供学习交流 Python学习两周时间了,这是我目前编写的比较满意的一个程序,有以下几个方面的经验总结:1.布局管理是可视化编程

PMM (Percona MySQL Monitor) 部署

部署环境说明mysql 10.0.0.201pmm server 10.0.0.200操作系统都是centos 7.x安装PMM安装dockeryum install docker运行dockersyst

分享到:

栏目导航

推荐阅读

热门阅读