sql触发器
2013-10-31 14:14
323 查看
/*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;
相关文章推荐
- 左连接、右连接和全连接的区别
- rowid删除重复记录
- MYSQL添加新用户 MYSQL为用户创建数据库 MYSQL为新用户分配权限
- sqlite语句,关于使用FMDB操作带有外键的数据库
- pl/sql连接时报错 SQL*Net not properly installed OracleHomeKey:
- lazarus连接access数据库
- lazarus连接access数据库
- SCN基础
- 分布式缓存系统Memcached简介与实践
- 关于mysql建表中含有longtext字段时,查询缓慢的原因和解决方案
- sqlserver脚本时间计算
- oracle11gocp通过标准
- php操作MONGODB
- SQL Server 2008 清空删除日志文件
- MySQL数据库安全设置与注意事项小结
- mysql存储过程中是有字符型参数,和是表面动态用法
- oracle 数据快修复—之使用RMAN 块介质恢复
- 解决cognos创建数据源连接本地数据库失败问题
- 公交司机解决PSQLException
- Oracle数据库like查询