DROP TABLE member PURGE ;
DROP TABLE book PURGE ;
CREATE TABLE member(
mid NUMBER ,
name VARCHAR2(20)NOT NULL ,
CONSTRAINT pk_mid PRIMARY KEY(mid)
) ;
CREATE TABLE book(
bid NUMBER ,
title VARCHAR2(20) ,
mid NUMBER ,
CONSTRAINT pk_bid PRIMARY KEY(bid) ,
CONSTRAINT fk_mid FOREIGN KEY(mid) REFERENCES member(mid)
) ;
范例:强制删除
DROP TABLE member CASCADE CONSTRAINT ;
但是必须注意的是,强制删除是无法彻底删除的,所删除的数据表会保存在回收站之中。但是不建议使用强制删除
表的操作,还是建议按照先删除子表再删除父表的方式进行。
范例:设置级联删除
DROP TABLE book PURGE ;
DROP TABLE member PURGE ;
CREATE TABLE member(
mid NUMBER ,
name VARCHAR2(20)NOT NULL ,
CONSTRAINT pk_mid PRIMARY KEY(mid)
) ;
CREATE TABLE book(
bid NUMBER ,
title VARCHAR2(20) ,
mid NUMBER ,
CONSTRAINT pk_bid PRIMARY KEY(bid) ,
CONSTRAINT fk_mid FOREIGN KEY(mid) REFERENCES member(mid) ON DELETE CASCADE
) ;
范例:设置级联更新
DROP TABLE book PURGE ;
DROP TABLE member PURGE ;
CREATE TABLE member(
mid NUMBER ,
name VARCHAR2(20)NOT NULL ,
CONSTRAINT pk_mid PRIMARY KEY(mid)
) ;
CREATE TABLE book(
bid NUMBER ,
title VARCHAR2(20) ,
mid NUMBER ,
CONSTRAINT pk_bid PRIMARY KEY(bid) ,
CONSTRAINT fk_mid FOREIGN KEY(mid) REFERENCES member(mid) ON DELETE SET NULL
) ;
1、 为表中增加约束
ALTER TABLE 表名称 ADD CONSTRAINT 约束名称 约束类型(约束字段) [选项] ;
但是需要提醒的是,此类的语法适合于唯一、主键、检查、外键约束的添加,而无法添加非空约束
2、 删除约束
ALTER TABLE 表名称 DROP CONSTRAINT 约束名称 ;