奇怪的数据库问题

Strange Database Questions

CREATE TABLE customers 
(
    cid CHAR(4), 
    cname CHAR(20), 
    PRIMARY KEY(cid)
)

CREATE TABLE orders 
(
    oid CHAR(6), 
    odate CHAR(6), 
    custid CHAR(4),
    PRIMARY KEY(oid), 
    FOREIGN KEY (cusitd) REFERENCES customers(cid) ON DELETE CASCADE
)

如果客户记录数为10条,订单记录数为15条,在运行后面的命令后,

DELETE FROM customers C  
WHERE C.cid = '2000'

customers 和 orders 中所有记录的总和最少和最多等于:

我们的助教select (2)。为什么 ?这是个奇怪的问题 :) 不知道 table !

2) at most 25- at least 9

删除前所有记录的总和为10+15 = 25。
如果没有C.cid='2000'的客户,删除命令不会删除任何记录,总和保持不变==>最多25条记录。
如果客户 C.cid='2000' 存在,并且订单 table 中的所有记录都被客户 C.cid='2000' 引用,则删除命令从客户 C.cid='2000' 中删除一条记录 table,以及订单table的所有记录(15),共16条记录。
25 - 16 = 9,所以至少有 9 条记录。