以下哪种情况a)提供更好的性能,b)更可靠/准确。我简化了使用的过程和表格。我会提供代码/工作,但它是相当简单的东西。我正在使用MS-SQL2008,但我认为这个问题与平台无关。
1)项目从库存中删除(库存项目具有唯一ID),触发更新[tblSold]的触发器,如果ID不存在则创建记录,添加值1,如果确实存在,则将当前值加1。销售细节记录在其他地方。
2)当要求库存可用性时,它只根据ID对[tblSales]中的数量求和。
将严重要求库存可用性,并且出于显而易见的原因不会出错。
答案 0 :(得分:1)
我会采用第一种方法,没有理由计算行数,当你只能从数据库中读取一个值时,触发器就不会有任何坏处,因为你不会像要求数量那样经常出售物品。
答案 1 :(得分:1)
我打算玩魔鬼来提倡先前的答案并建议使用查询 - 这是我的理由。
最终这是一个设计决定,每个人都会有不同的看法。在一天结束时,它将归结为您的偏好和设计。