我有一个包含以下列的表:" id
,parent_id
,name
" ,其中parent_id
指向同一个表中的实体。
我想添加一个约束,阻止我删除实体,如果有其他实体,则第一个实体为parent_id
。
是否可以使用外键或外键只允许指向其他表?
答案 0 :(得分:2)
是的,外键可以引用同一个表。
这个经典示例(通常包含在数据库附带的示例数据库中)是:
product_id
此类引用称为自引用外键。如果像上面那样定义,它们会自动阻止删除父母"记录是否有"孩子"引用它。