【发布时间】:2026-01-27 13:55:01
【问题描述】:
我有一个通过 Web 界面对仓库批发商进行销售、库存和付款的管理应用程序。特别是,当一个订单被执行时,它必须创建一个对应于每个订购了相应数量的产品的行。库存可用性的验证是在下订单时完成的。
考虑以下两种验证方式:
1) 在 OrderLine 表上使用触发器“BEFORE...ON INSERT”,对 Product 执行 SELECT 验证是否存在足够的 Stock。
2) 执行 SELECT...FROM OrderLine JOIN Product WHERE quant
我的问题是这两种选择中的哪一种更有可能?为什么?
谢谢
【问题讨论】:
-
只需我的两分钱 - 在应用程序的业务逻辑层处理验证。
-
我相信您要解决的问题是验证检查和数据插入之间的时间间隔。您应该能够利用具有适当隔离级别的事务来处理此问题。
标签: sql database postgresql join triggers