我对我的查询有点困惑。我收到错误,但它有效。我在命令提示符下使用 ORACLE 11gR2。我用主键和外键创建了 2 个表 dp(部门)和 em(员工)。如果我运行脚本几次,DROP TABLE 函数会尝试删除表 2 次,但它应该只尝试一次。您能否告诉我为什么会发生这种情况。我的脚本如下。
cl scr
DROP TABLE dp CASCADE CONSTRAINT ;
L
// DROP TABLE dp PURGE ;
L
CREATE TABLE dp (
dpid NUMBER(2),
dname VARCHAR2(20));
DROP TABLE em PURGE ;
CREATE TABLE em (
emid NUMBER(2),
ename VARCHAR2(20),
dpid NUMBER(2));
ALTER TABLE dp
ADD CONSTRAINT pk_dp_dpid PRIMARY KEY (dpid) ;
ALTER TABLE em
ADD CONSTRAINT fk_em_dp_dpid FOREIGN KEY (dpid)
REFERENCES dp (dpid) ;