使用SPT,存储过程,Insert,Delete,Update后,会有2个表Inserted和Deleted;
1.插入操作(Insert)
Inserted表有数据,Deleted表无数据
2.删除操作(Delete)
Inserted表无数据,Deleted表有数据
3.更新操作(Update)
Inserted表有数据(新数据),Deleted表有数据(旧数据)
其中,用存储过程实现有2种方法,一就是带OUTPUT参数,一就是主动返回表值(就像查询表一样)
带参数的存储过程你网上找找,下面介绍不带OUTPUT的
create proc update_dbf
@id int,@name varchar(20)
-- 等等参数
as
delcare @name varchar(10)
begin
update ...............
--主要语句,正常情况下,只有这句
select id from Inserted
-- 由于执行 update 是不需要返回表值的,你在这里多了这个查询,相当于,你这个就是update加查询了
end