Oracle11g 如何在Oracle 11g中使用SQL Developer进行删除级联?

Oracle11g 如何在Oracle 11g中使用SQL Developer进行删除级联?,oracle11g,record,Oracle11g,Record,我试图从数据库中的一个表中删除一条记录,但另一个表引用了此行(外键)。因此,我想在oracle11g中使用sqldeveloper进行删除级联。如何执行此操作?如果试图删除(父)表中的行,而其他(子)表具有对该行的外键引用,则会导致 ORA-02292: integrity constraint (XXXXXX) violated. 要在删除父记录时删除所有子行,请指定“ON delete CASCADE”选项 在这种情况下,如果删除了department表中的一行,它将删除employee表

我试图从数据库中的一个表中删除一条记录,但另一个表引用了此行(外键)。因此,我想在oracle11g中使用sqldeveloper进行删除级联。如何执行此操作?

如果试图删除(父)表中的行,而其他(子)表具有对该行的外键引用,则会导致

ORA-02292: integrity constraint (XXXXXX) violated.
要在删除父记录时删除所有子行,请指定“ON delete CASCADE”选项

在这种情况下,如果删除了department表中的一行,它将删除employee表中的所有员工,而不是引发默认情况下的错误


这与工具(SQL Developer)无关。

回答OP的技术问题: 在SQLDeveloper中,可以使用外键引用编辑(子)表。从左侧的树状视图中选择“约束”,然后选择有问题的外键。在“引用约束”表单中,有一个名为“删除时”的下拉列表。从该下拉列表中,选择“级联”

CREATE TABLE Dept_tab (
    Deptno  NUMBER(3) CONSTRAINT Dept_pkey PRIMARY KEY, 
    Dname   VARCHAR2(15), 
    Loc     VARCHAR2(15), 
                CONSTRAINT Dname_ukey UNIQUE (Dname, Loc), 
                CONSTRAINT Loc_check1 
                    CHECK (loc IN ('NEW YORK', 'BOSTON', 'CHICAGO')));

CREATE TABLE Emp_tab ( 
    Empno    NUMBER(5) CONSTRAINT Emp_pkey PRIMARY KEY, 
    Ename    VARCHAR2(15) NOT NULL, 
    Job      VARCHAR2(10), 
    Mgr      NUMBER(5) CONSTRAINT Mgr_fkey REFERENCES Emp_tab,
    Hiredate DATE, 
    Sal      NUMBER(7,2), 
    Comm     NUMBER(5,2), 
    Deptno   NUMBER(3) NOT NULL 
             CONSTRAINT dept_fkey REFERENCES Dept_tab ON DELETE CASCADE);