• sql触发器


    /*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;
  • 相关阅读:
    centOS学习part6:安装oracle 11g
    centOS学习part5:oracle 11g安装之环境准备
    centOS学习part4:安装配置vsftp
    centOS学习part3:远程工具VNC的安装与配置
    centOS学习part2:安装JDK及tomcat
    centOS学习part1:操作系统安装
    SSH开发实践part4:Spring整合Struts
    SSH开发实践part3:hibernate继承映射
    读《实战GUI自动化测试》之:第三步,如何提高测试结果分析的效率
    读《实战 GUI 产品的自动化测试》之:第二步,构建利于维护的自动化测试系统
  • 原文地址:https://www.cnblogs.com/zhanying/p/3399223.html
Copyright © 2020-2023  润新知