先进先出的数据库结构设计
1. 入库表
类别
编号
名称
规格
单位
单价
入库数量
入库日期
入库批次(主键)
剩余数量
2. 出库表
类别
编号
名称
规格
单位
出库数量
出库日期
出库批次(主键)3. 业务流程
(1) 物品入库
类别  编号   名称   规格   单位   单价  入库数量  入库日期  入库批次  剩余数量 
食品  01    牛奶   500ml   盒     3.0    10      2006-1-1      1       10
食品  01    牛奶   500ml   盒     3.1    20      2006-1-1      2       20
食品  01    牛奶   500ml   盒     3.2    30      2006-1-1      3       30
(2) 物品出库
类别  编号   名称   规格   单位  出库数量  出库日期  出库批次 
食品  01    牛奶   500ml   盒     40       2006-1-2     1
    (3) 修改物品入库表的“剩余数量”
类别  编号   名称   规格   单位   单价  入库数量  入库日期  入库批次  剩余数量 
食品  01    牛奶   500ml   盒     3.0    10      2006-1-1      1       0
食品  01    牛奶   500ml   盒     3.1    20      2006-1-1      2       0
食品  01    牛奶   500ml   盒     3.2    30      2006-1-1      3       10
(4)物品再入库
类别  编号   名称   规格   单位   单价  入库数量  入库日期  入库批次  剩余数量 
食品  01    牛奶   500ml   盒     3.0    10      2006-1-1      1       0
食品  01    牛奶   500ml   盒     3.1    20      2006-1-1      2       0
食品  01    牛奶   500ml   盒     3.2    30      2006-1-1      3       10
食品  01    牛奶   500ml   盒     3.2    40      2006-1-2      4       50
(5)物品再出库
类别  编号   名称   规格   单位  出库数量  出库日期  出库批次 
食品  01    牛奶  500ml   盒     10       2006-1-2     1
食品  01    牛奶  500ml   盒     20       2006-1-2     2
(6)再次修改物品入库表的“剩余数量”
类别  编号   名称   规格   单位   单价  入库数量  入库日期  入库批次  剩余数量 
食品  01    牛奶  500ml    盒     3.0     10      2006-1-1      1       0
食品  01    牛奶  500ml    盒     3.1     20      2006-1-1      2       0
食品  01    牛奶  500ml    盒     3.2     30      2006-1-1      3       0
食品  01    牛奶  500ml    盒     3.2     40      2006-1-2      4       40说明:入库表的剩余数量是按“入库批次号”进行分组的。
     (1)(2)(6)是按照顺序列出了“入库”“出库”的步骤。
要求得到一个触发器:作用在“出库表”上,当有出库操作时同时修改“入库表”的“剩余数量”字段的值,已达到“先进先出”的目的。

解决方案 »

  1.   

    chuifengde(树上的鸟儿) 
    第一次入库的总量是60,第一次出了40,为何剩下10;第二次....
    ------------------------------------------------------------
    改动一下,应该是20,敲错了
      

  2.   

    应该是这样:先进先出的数据库结构设计
    1. 入库表
    类别
    编号
    名称
    规格
    单位
    单价
    入库数量
    入库日期
    入库批次(主键)
    剩余数量
    2. 出库表
    类别
    编号
    名称
    规格
    单位
    出库数量
    出库日期
    出库批次(主键)3. 业务流程
    (1) 物品入库
    类别  编号   名称   规格   单位   单价  入库数量  入库日期  入库批次  剩余数量 
    食品  01    牛奶   500ml   盒     3.0    10      2006-1-1      1       10
    食品  01    牛奶   500ml   盒     3.1    20      2006-1-1      2       20
    食品  01    牛奶   500ml   盒     3.2    30      2006-1-1      3       30
    (2) 物品出库
    类别  编号   名称   规格   单位  出库数量  出库日期  出库批次 
    食品  01    牛奶   500ml   盒     40       2006-1-2     1
        (3) 修改物品入库表的“剩余数量”
    类别  编号   名称   规格   单位   单价  入库数量  入库日期  入库批次  剩余数量 
    食品  01    牛奶   500ml   盒     3.0    10      2006-1-1      1       0
    食品  01    牛奶   500ml   盒     3.1    20      2006-1-1      2       0
    食品  01    牛奶   500ml   盒     3.2    30      2006-1-1      3       20
    (4)物品再入库
    类别  编号   名称   规格   单位   单价  入库数量  入库日期  入库批次  剩余数量 
    食品  01    牛奶   500ml   盒     3.0    10      2006-1-1      1       0
    食品  01    牛奶   500ml   盒     3.1    20      2006-1-1      2       0
    食品  01    牛奶   500ml   盒     3.2    30      2006-1-1      3       20
    食品  01    牛奶   500ml   盒     3.2    40      2006-1-2      4       60
    (5)物品再出库
    类别  编号   名称   规格   单位  出库数量  出库日期  出库批次 
    食品  01    牛奶  500ml   盒     10       2006-1-2     1
    食品  01    牛奶  500ml   盒     20       2006-1-2     2
    (6)再次修改物品入库表的“剩余数量”
    类别  编号   名称   规格   单位   单价  入库数量  入库日期  入库批次  剩余数量 
    食品  01    牛奶  500ml    盒     3.0     10      2006-1-1      1       0
    食品  01    牛奶  500ml    盒     3.1     20      2006-1-1      2       0
    食品  01    牛奶  500ml    盒     3.2     30      2006-1-1      3       0
    食品  01    牛奶  500ml    盒     3.2     40      2006-1-2      4       40说明: 
         (1)(2)(6)是按照顺序列出了“入库”“出库”的步骤。
    要求得到一个触发器:作用在“出库表”上,当有出库操作时同时修改“入库表”的“剩余数量”字段的值,已达到“先进先出”的目的。
      

  3.   

    (4)物品再入库
    类别  编号   名称   规格   单位   单价  入库数量  入库日期  入库批次  剩余数量 
    食品  01    牛奶   500ml   盒     3.0    10      2006-1-1      1       0
    食品  01    牛奶   500ml   盒     3.1    20      2006-1-1      2       0
    食品  01    牛奶   500ml   盒     3.2    30      2006-1-1      3       20
    食品  01    牛奶   500ml   盒     3.2    40      2006-1-2      4       6060应该是40吧
      

  4.   

    应该是这样:
    ------------------------------------------------------------
    先进先出的数据库结构设计
    1. 入库表
    类别
    编号
    名称
    规格
    单位
    单价
    入库数量
    入库日期
    入库批次(主键)
    剩余数量
    2. 出库表
    类别
    编号
    名称
    规格
    单位
    出库数量
    出库日期
    出库批次(主键)3. 业务流程
    (1) 物品入库
    类别  编号   名称   规格   单位   单价  入库数量  入库日期  入库批次  剩余数量 
    食品  01    牛奶   500ml   盒     3.0    10      2006-1-1      1       10
    食品  01    牛奶   500ml   盒     3.1    20      2006-1-1      2       20
    食品  01    牛奶   500ml   盒     3.2    30      2006-1-1      3       30
    (2) 物品出库
    类别  编号   名称   规格   单位  出库数量  出库日期  出库批次 
    食品  01    牛奶   500ml   盒     40       2006-1-2     1
        (3) 修改物品入库表的“剩余数量”
    类别  编号   名称   规格   单位   单价  入库数量  入库日期  入库批次  剩余数量 
    食品  01    牛奶   500ml   盒     3.0    10      2006-1-1      1       0
    食品  01    牛奶   500ml   盒     3.1    20      2006-1-1      2       0
    食品  01    牛奶   500ml   盒     3.2    30      2006-1-1      3       20
    (4)物品再入库
    类别  编号   名称   规格   单位   单价  入库数量  入库日期  入库批次  剩余数量 
    食品  01    牛奶   500ml   盒     3.0    10      2006-1-1      1       0
    食品  01    牛奶   500ml   盒     3.1    20      2006-1-1      2       0
    食品  01    牛奶   500ml   盒     3.2    30      2006-1-1      3       20
    食品  01    牛奶   500ml   盒     3.2    40      2006-1-2      4       40
    (5)物品再出库
    类别  编号   名称   规格   单位  出库数量  出库日期  出库批次 
    食品  01    牛奶  500ml   盒     10       2006-1-2     1
    食品  01    牛奶  500ml   盒     20       2006-1-2     2
    (6)再次修改物品入库表的“剩余数量”
    类别  编号   名称   规格   单位   单价  入库数量  入库日期  入库批次  剩余数量 
    食品  01    牛奶  500ml    盒     3.0     10      2006-1-1      1       0
    食品  01    牛奶  500ml    盒     3.1     20      2006-1-1      2       0
    食品  01    牛奶  500ml    盒     3.2     30      2006-1-1      3       0
    食品  01    牛奶  500ml    盒     3.2     40      2006-1-2      4       40说明: 
         (1)(2)(6)是按照顺序列出了“入库”“出库”的步骤。
    要求得到一个触发器:作用在“出库表”上,当有出库操作时同时修改“入库表”的“剩余数量”字段的值,已达到“先进先出”的目的。