mysql触发器实例附答案 - 图文

更新时间:2024-04-07 00:12:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

触发器和常用函数

第一部分:触发器 概念题

1触发器的含义和作用

实践题

在product表上创建三个触发器。每次激活触发器后,都会更新operate表。product表和operate表的内容如下

Product表内容 字段名 Id Name Function Address Operate表的内容 字段名 Op_id Op_type Op_time 字段描述 编号 操作方式 操作时间 数据类型 Int(10) Time 主键 是 否 外键 否 否 否 非空 是 是 是 唯一 是 否 否 自增 是 否 否 字段描述 产品编号 产品功能 主要功能 家庭住址 数据类型 Int(10) 主键 是 外键 否 否 否 否 否 非空 是 是 否 是 否 唯一 是 否 否 否 否 自增 否 否 否 否 否 Varchar(20) 否 Varchar(50) 否 Varchar(20) 否 Varchar(20) 否 Company 生产厂家 Varchar(20) 否 按照下列要求进行操作

1 在product表上分别创建BEFORE INSERT、AFTER UPDATE和AFTER DELETE 3个触发器,触发器名称分别为product_bf_insert、product_af_update和product_af_del。执行语句部分都是向operate表插入操作方法和操作时间。

2 对product表分别执行INSERT、UPDATE和DELETE操作 3 删除product_bf_insert和product_af_update这两个触发器

执行步骤

1.创建product表和operate表 2.创建product_bf_insert触发器 3.创建product_af_update触发器 4.创建product_af_del触发器 5.对product表进行操作 6.删除触发器

第二部分:MySQL常用函数

文本函数

数字函数

日期和时间函数

概念题

触发器是由INSERT、UPDATE和DELETE等事件来触发某种特定操作。 满足触发器的触发条件时,数据库系统就会执行触发器中定义的程序语句。这样做可以保证某些操作的一致性。

实践题

1 CREATE TABLE product(

id INT(10) NOT NULL UNIQUE PRIMARY KEY, name VARCHAR(20) NOT NULL, function VARCHAR(50),

company VARCHAR(20) NOT NULL, address VARCHAR(50) );

CREATE TABLE operate(

op_id INT(10) NOT NULL UNIQUE PRIMARY KEY AUTO_INCREMENT, op_name VARCHAR(20) NOT NULL, op_time TIME NOT NULL, );

2 CREATE TRIGGER product_bf_insert BEFORE INSERT ON poduct FOR EACH ROW

INSERT INTO operate VALUES(null,’Insert product’,now()); SELECT * FROM

information_schema.triggers WHERE TRIGGER_NAME=’product_bf_insert ’ \\G* (查看触发器product_bf_insert基本信息)

3 CREATE TRIGGER product_af_update AFTER UPDATE ON product FOR EACH ROW

INSERT INTO operate VALUES(null,’Update product’,now());

4 CREATE TRIGGER product_af_del AFTER DELETE ON product FOR EACH ROW

INSERT INTO operate VALUES(null,’delete product’,now());

5 INSERT INTO product VALUES(1,’abc’,’治疗感冒’,’北京abc制药厂’,’北京市昌平区’); SELECT * FROM operate;

UPDATE product SET address=’北京市海淀区’ WHERE id=1; SELECT * FROM operate;

DELETE FROM product WHERE id=1; SELECT * FROM operate;

6 DROP TRIGGER product_bf_insert; DROP TRIGGER product_af_update;

本文来源:https://www.bwwdw.com/article/m7br.html

Top