SQL Server 学习笔记⑧- 触发器(修改前和修改后的语句插入指定表中)
2015-12-03 09:39
288 查看
--测试数据 create table 表a ( id int , name varchar(10), price int , unit varchar(10), rem varchar(10) ) insert into 表a select 1, '宝马', 100 , '辆', '四川' union all select 2, '奔驰', 78, '辆', '北京' union all select 3, '夏利', 6, '辆', '上海' --select * from 表a create table 表b ( xgid int, id int , name varchar(10), price int , unit varchar(10), rem varchar(10), alterid int, alterdate datetime ) --触发器 create TRIGGER tr_test ON 表a AFTER UPDATE AS BEGIN SET NOCOUNT ON; declare @maxid int select @maxid=isnull(MAX(xgid),0)+1 from 表b insert into 表b select xgid=@maxid, id, name, price, unit, rem, alterid=0, alterdate=GETDATE() from deleted insert into 表b select xgid=@maxid, id, name, price, unit, rem, alterid=1, alterdate=GETDATE() from inserted END GO --操作 update 表a set name='宝马1' from 表a where id =1 --查询 select * from 表b --结果 /* xgid id name price unit rem alterid alterdate ----------- ----------- ---------- ----------- ---------- ---------- ----------- ----------------------- 0 1 宝马 100 辆 四川 0 2015-12-03 09:30:20.260 0 1 宝马1 100 辆 四川 1 2015-12-03 09:30:20.260 (2 行受影响) */ --操作 update 表a set name='宝马2' from 表a where id =1 --查询 select * from 表b --结果 /* xgid id name price unit rem alterid alterdate ----------- ----------- ---------- ----------- ---------- ---------- ----------- ----------------------- 0 1 宝马 100 辆 四川 0 2015-12-03 09:30:20.260 0 1 宝马1 100 辆 四川 1 2015-12-03 09:30:20.260 1 1 宝马1 100 辆 四川 0 2015-12-03 09:31:33.593 1 1 宝马2 100 辆 四川 1 2015-12-03 09:31:33.593 (4 行受影响) */
相关文章推荐
- Android之获取手机上的图片和视频缩略图thumbnails
- 数据库链接字符串查询网站
- DB2实例管理
- DB2实例管理
- 保障MySQL数据安全的14个最佳方法
- mysql问答汇集
- 创建一个空的IBM DB2 ECO数据库的方法
- Access 2000 数据库 80 万记录通用快速分页类
- 开通一个数据库失败的原因的和解决办法
- 一个简单的asp数据库操作类
- CentOS下DB2数据库安装过程详解
- EasyASP v1.5发布(包含数据库操作类,原clsDbCtrl.asp)第1/2页
- sql2008 还原数据库解决方案
- Oracle 数据库自动存储管理-安装配置
- Oracle 数据库 临时数据的处理方法
- 数据库分页查询语句数据库查询
- 最近比较流行的数据库挂马
- Oracle 手动创建数据库步骤详解
- 分割超大Redis数据库例子