我是Business Analysis的新手。我必须编写要求,显示(现在)级联删除(对于两个表),其余表将显式删除。
我需要一些关于如何编写级联删除要求的指导。
答案 0 :(得分:1)
实际上,如果没有上下文就很难理解任务,而且它也像大学/学校的作业一样(我们有一个与此非常类似)。
答案 1 :(得分:1)
使用ON DELETE CASCADE选项指定在父表中删除相应行时是否要在子表中删除行。如果未指定级联删除,则数据库服务器的默认行为会阻止您删除表中的数据(如果其他表引用它)。
如果指定此选项,稍后在删除父表中的行时,数据库服务器还会删除子表中与该行(外键)关联的所有行。级联删除功能的主要优点是它允许您减少执行删除操作所需的SQL语句数量。
例如,all_candy表包含candy_num列作为主键。 hard_candy表将candy_num列称为外键。以下CREATE TABLE语句使用外键上的cascading-delete选项创建hard_candy表:
CREATE TABLE all_candy
(candy_num SERIAL PRIMARY KEY,
candy_maker CHAR(25));
CREATE TABLE hard_candy
(candy_num INT,
candy_flavor CHAR(20),
FOREIGN KEY (candy_num) REFERENCES all_candy
ON DELETE CASCADE)
因为为从属表指定了ON DELETE CASCADE,所以当删除all_candy表的一行时,也会删除hard_candy表的相应行。有关从具有级联删除的表中删除行时的语法限制和锁定含义的信息,请参阅表具有级联删除时的注意事项。
来源:http://publib.boulder.ibm.com/infocenter/idshelp/v10/index.jsp?topic=/com.ibm.sqls.doc/sqls292.htm
答案 2 :(得分:0)
你没有为功能编写用例 - 这就是为什么很难正确回答你的问题的原因 - 我们不知道与系统交互的演员,当然我们对系统一无所知,所以我们无法告诉你如何写出他们的互动描述。 您应该首先编写用例并从中派生出功能。