Oracle级联删除可以使用触发器来实现,但是实现起来会比较麻烦,最简单的就是直接建立表的主外键关系,给列设置级联删除。
——创建了CLASS表,并设置ID字段为主键。
— Create table
createtableCLASS ( IDVARCHAR2(2)notnull, CLASS_NAMEVARCHAR2(20) ) altertableCLASS addconstraintPK_CLASSprimarykey(ID)
——创建了STUDENTS表,并设置ID字段为主键,CLASS_ID为外键且有级联删除。
— Create table
createtableSTUDENTS ( IDVARCHAR2(4)notnull, CLASS_IDVARCHAR2(2)notnull, STU_NAMEVARCHAR2(20), STU_AGENUMBER ) altertableSTUDENTS addconstraintPK_STUprimarykey(ID) altertableSTUDENTS addconstraintFK_STUforeignkey(CLASS_ID) referencesCLASS(ID)ondeletecascade;
这样删除了班级ID,所属的学生都会被删除。这就实现了Oracle的级联删除。
相关文章
标签:Oracle