概述
/*1,建商品表(Store),订单表(orders),日志表(Logs) 2,创建订单表插入触发器,实现插入一条订单信息,商品表中商品数量相应减少,订单中的总金额相应增加。 3,创建订单表更新触发器,实现更新一条订单信息,商品表中商品数量相应变化,订单中的总金额相应变化。(和2类似) 4,创建日志表触发器,实现更新商品表价格变化情况。 */ use samp go create table Store ( id uniqueidentifier primary key, productid int not null, productprice money not null default 1, productch nvarchar(80) not null, productdate datetime not null, nownumber int not null ); create table orders ( orderid int primary key, productid int not null, buynumber int not null default 1, buypricr money not null, noworderprice money default 0 ) create table logs ( id uniqueidentifier primary key, operatedatetime datetime, productid int , oldprice money, newprice money ) insert into store values(newid(),1001,5000,'联想','2013-5-6',50) insert into store values(newid(),1002,6000,'apple','2013-5-6',50) insert into orders(orderid,productid,buynumber,buypricr) values(10013,1001,5,6000) --select * from store left join orders on store.productid=orders.productid --创建触发器 /*2,创建订单表插入触发器,实现插入一条订单信息,商品表中商品数量相应减少,订单中的总金额相应增加。 3,创建订单表更新触发器,实现更新一条订单信息,商品表中商品数量相应变化,订单中的总金额相应变化。(和2类似) 4,创建日志表触发器,实现更新商品表价格变化情况。 */ create trigger tri_order_noworderprice on orders after insert as begin declare @noworderprice money; declare @buynumber int; declare @productid int; select @productid=productid,@buynumber=buynumber from inserted; select @noworderprice=inserted.buynumber*inserted.buypricr from inserted; update orders set noworderprice=@noworderprice where productid=@productid; update store set nownumber=nownumber-@buynumber where productid=@productid; end;
转载于:https://www.cnblogs.com/zhanying/p/3399223.html
最后
以上就是强健战斗机为你收集整理的sql触发器的全部内容,希望文章能够帮你解决sql触发器所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复