我该怎么做:在Oracle中动态更新?(How can I do this dynamical up

2019-11-04 12:03发布

我有这样定义的模型表:

MODEL (id NUMBER, capacity NUMBER ) 

和飞行表定义如下:

FLIGHT (flight_number NUMBER, available_seats NUMBER)

我想在初始化在模型中的每个新行插入飞行表时定义的容量数飞行available_seats领域。 此外,我希望在available_seats递减至零,以通知用户。 我怎样才能做到这一点?

Answer 1:

我会写称为REGISTER飞行的存储过程,这将接受作为参数模型表格的PK(和其他所需的参数,有程序上做MODEL表中查找,然后将初始行到飞行表。

然后,我会叫BOOK_SEAT二次手术,这将在预订航班的过程中,减少在飞行可用座位数。 如果预订降低available_seats为零(或更少),它会抛出一个异常(如OVERBOOKED_EXCEPTION),并期望呼叫者捕获并处理这个问题。



文章来源: How can I do this dynamical update in Oracle?