【问题5】 如果一种原材料可以在多个仓库中存放,则问题4中的触发器程序存在什么问题,如何修改
参考答案:
解析:存在问题:触发器程序判定某一原材料“数量”是否小于其存储量时,是按照当前记录的“数量”来判定的,当一种原材料存储在多个仓库时,这样判定是错误的,应根据该原材料在各仓库的存储总量判定。 应将触发器程序的WHEN 子句条件修改为: WHEN nrow.储备量>(SELECT SUM (数量) FROM 原材料 WHERE 编号=(SELECT 编号 FROM nrow) GROUP BY 编号)
[分析]: 本题存在问题:触发器程序判定某一原材料“数量”是否小于其存储量时,是按照当前记录的“数量”来判定的,当一种原材料存储在多个仓库时,这样判定是错误的,应根据该原材料在各仓库的存储总量判定。