Trigger-demo--新增 更新 和删除的一个 例子
2012-02-14 11:49
337 查看
--create table persons
drop table if EXISTS `persons`;
CREATE TABLE `persons`(
P_id int(5) primary key,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
);
--create table person_record to record the persons's changed
drop table if exists `person_record`;
CREATE table person_record(
R_id int(5) AUTO_INCREMENT PRIMARY KEY,
P_id int(5),
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255),
Operate_type varchar(10)
);
--create trigger insert, update, delete for persons
DROP TRIGGER IF EXISTS `persons_insert_trigger`;
DROP TRIGGER IF EXISTS `persons_update_trigger`;
DROP TRIGGER IF EXISTS `persons_delete_trigger`;
CREATE TRIGGER persons_insert_trigger AFTER INSERT ON persons for each row
begin
insert into person_record(P_id,LastName,FirstName,Address,City,Operate_type)
values (new.P_id,new.LastName,new.FirstName,new.Address,new.City,'CREATE');
end;
create trigger person_update_trigger after update on persons for each row
begin
insert into person_record(P_id,LastName,FirstName,Address,City,Operate_type)
values (old.P_id,new.LastName,new.FirstName,new.Address,new.City,'UPDATE');
end;
create trigger person_delete_trigger after delete on persons for each row
begin
insert into person_record(P_id,LastName,FirstName,Address,City,Operate_type)
values (old.P_id,old.LastName,old.FirstName,old.Address,old.City,'DELETE');
end;
drop table if EXISTS `persons`;
CREATE TABLE `persons`(
P_id int(5) primary key,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
);
--create table person_record to record the persons's changed
drop table if exists `person_record`;
CREATE table person_record(
R_id int(5) AUTO_INCREMENT PRIMARY KEY,
P_id int(5),
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255),
Operate_type varchar(10)
);
--create trigger insert, update, delete for persons
DROP TRIGGER IF EXISTS `persons_insert_trigger`;
DROP TRIGGER IF EXISTS `persons_update_trigger`;
DROP TRIGGER IF EXISTS `persons_delete_trigger`;
CREATE TRIGGER persons_insert_trigger AFTER INSERT ON persons for each row
begin
insert into person_record(P_id,LastName,FirstName,Address,City,Operate_type)
values (new.P_id,new.LastName,new.FirstName,new.Address,new.City,'CREATE');
end;
create trigger person_update_trigger after update on persons for each row
begin
insert into person_record(P_id,LastName,FirstName,Address,City,Operate_type)
values (old.P_id,new.LastName,new.FirstName,new.Address,new.City,'UPDATE');
end;
create trigger person_delete_trigger after delete on persons for each row
begin
insert into person_record(P_id,LastName,FirstName,Address,City,Operate_type)
values (old.P_id,old.LastName,old.FirstName,old.Address,old.City,'DELETE');
end;
相关文章推荐
- 前端传的dto,和后端查询的信息时(即又有更新又有新增还有删除),做一个更新的操作问题
- 一个实现数据增量加载的ETL算法(记录新增、更新和删除标志)
- Struts2+Ibatis+Spring.30(完整例子,含3.0事务配置,OSCache缓存配置,JreeChart配置,log4j日志输出Sql,对一个表实现完整的查询,批量删除,添加,更新)
- 一个简单的 用row_number() over 限定 更新的例子
- MYSQL_使用外键约束(constraint)或触发器(trigger)来进行级联更新、删除
- 写的一个删除文件的小例子
- sql 根据一个表更新 另一个表的例子及可能遇到的问题
- python orm框架sqlalchemy执行更新、删除时遇到的一个bug
- SQL Server一个表添加数据,引发另一个表更新数据 的一个简单触发器例子
- mysql 新增字段 添加字段 删除字段 修改字段 级联删除 级联更新 等
- Android中Service的一个Demo例子
- 一个简单的双击编辑表格单元格,更新数据表的demo。
- ASP.NET Zero--13.一个例子(6)商品分类管理-删除分类
- 一个简单的jQuery例子,动态添加表格和删除
- BDB读、写、删除、更新事物、例子
- 返璞归真asp.net mvc 1.0(1) - 添加、查询、更新和删除的Demo【转】
- android一个上传图片的例子,包括如何终止上传过程,如果在上传的时候更新进度条(一)
- BBED找回删除数据的一个简单例子
- 一个GridView编辑删除的例子
- 一个获取手机应用并且按照安装的最新更新时间排序的demo