因此,我尝试开发一个简单的图书借阅系统,但在创建和使用功能时遇到了问题。
我有一个贷款'表',副本'表'和可用的'视图'。
“可用视图”如下所示:
book_id | available_copies
---------+------------------
BI6 | 1
其中“available_copies”列是
COUNT(copy_id) AS available_copies
FROM copies
WHERE copy_id NOT IN (SELECT copy_id FROM loans)
这是我的“副本表”
copy_id | book_id | copy_no | copy_code
---------+---------+---------+-----------
CI8 | BI6 | 8 | CI
CI9 | BI6 | 9 | CI
CI7 | BI7 | 7 | CI
CI10 | BI7 | 10 | CI
这是我的“贷款表”
loan_id | copy_id | user_id | borrow_date | due_date | loan_no | loan_code
---------+---------+---------+-------------+------------+---------+-----------
LI10 | CI10 | UI4 | 2013-05-21 | 2013-05-26 | 10 | LI
LI11 | CI8 | UI4 | 2013-05-21 | 2013-05-26 | 11 | LI
LI12 | CI7 | UI4 | 2013-05-22 | 2013-05-27 | 12 | LI
我真正想做的是..如果available_copies为0(如在上面的“可用视图”中,BI7不再在可用视图中,因为所有已借的副本)postgres将提示您无法在Loans中借书的内容因为这本书已经售罄了。
我对plpgsql有点陌生。请帮忙。:(