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'
客户和订单表中所有记录的总和至少和最多等于:
我们的TA选择(2)。为什么?这是一个奇怪的问题:)不知道桌子!
答案 0 :(得分:4)
2)最多25-至少9
所有删除的记录总和为10 + 15 = 25
如果没有C.cid =' 2000'的客户,删除命令不会删除任何记录,并且总和保持不变==>最多25条记录
如果客户C.cid =' 2000'存在,并且订单表中的所有记录都由客户C.cid =' 2000'引用,然后删除命令从客户表中删除一条记录,并从订单表(15)中删除所有记录,共16条记录。
25 - 16 = 9,所以至少有9条记录。